boost::format是boost库提供的字符串格式化的操作。
常用的操作如下:
#include <boost/format.hpp>
#include <iostream>
int _tmain(int argc, _TCHAR* argv[])
{
// 直接输出
std::cout << ( boost::format("%s") % "Hello boost!") << std::endl;
// 与string结合使用
std::string s1;
boost::format fmt("%s");
fmt % "Hello boost!!";
s1 = fmt.str();
std::cout << s1 << std::endl;
// 占位符格式
std::cout << (boost::format("%1% %2%") % "Hello" % "boost!!!") << std::endl; // "Hello"对应占位符%1%,"boost!!!"对应占位符%2%
std::cout << (boost::format("%2% %1% %3%") % "Hello" % "boost" % "!!!") << std::endl; // "Hello"对应占位符%1%,"boost"对应占位符%2% "!!!"对应占位符 %3%
system("pause");
return 0;
}
之前常用的printf()、sprintf()等函数中使用分号【,】 分割输入的参数;boost::format使用百分号【%】分割输入的参数;
另外boost::format也提供使用占位符的形式,占位符用两个百分号包裹,如【%1%】表示第一个占位符。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/46145.html