标准模版库中的string有一个很大的缺陷,就是没有类似于sprintf和CString的format方法, 当格式化字符串的时候没有这个方法是非常不爽的。幸好boost中提供了format库,可以实现标准模版库string类的格式化,更强的一点是boost的format支持强类型的数据检查,用法稍微有点怪异,见下面的示例
#pragma warning(disable: 4018) // signed/unsigned mismatch
#include "boost/format.hpp"
using namespace boost;
...
string szCon=str(format("'[TrainNo]'== '%s'") % pLogic->m_sTrain);
本文介绍如何利用Boost库中的format组件来格式化C++标准模板库中的字符串。由于标准模版库string类缺乏类似sprintf和CString的format方法,Boost.format提供了一种解决方案,不仅支持格式化操作还具备强类型数据检查的功能。
658





