是否有一种通用函数可用于执行sprintf
类型的字符串格式化,而无需提供固定大小的缓冲区,并返回string
类实例?
我知道stringstream
,但它不能满足我的需求,我不想像它要求的那样硬编码输出语句中标记的位置。
我希望能够像sprintf
一样定义模式,但没有C语言的负担,并且以更具有对象导向的C++方式实现。
也许有一些函数使用stringstream
执行sprintf
的功能,并生成一个string
对象?类似于Java中String.format()或Python中等价的字符串格式化语法所提供的方便性。
stringstream
不能做什么,而你需要的功能是什么吗?通过将stringstream
与<iomanip>
中的各种输出规范结合使用,几乎可以复制sprintf
可以实现的所有功能。 - Chad