猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
如何重用ostringstream?
我想清除并重用ostringstream(和底层缓冲区),这样我的应用程序就不必做太多分配了。如何将对象重置为其初始状态?
明月笑刀无情
浏览 502
回答 3
3回答
慕田峪9158850
如果要以某种方式清除缓冲区,使其在首次使用之前被清除,则需要先使用MSVC向缓冲区中添加一些内容。struct Foo { std::ostringstream d_str; Foo() { d_str << std::ends; // Add this } void StrFunc(const char *); template<class T> inline void StrIt(const T &value) { d_str.clear(); d_str.seekp(0); // Or else you'll get an error with this seek d_str << value << std::ends; StrFunc(d_str.str().c_str()); // And your string will be empty }};
0
0
0
守着星空守着你
考虑一下用例,其中代码遍历输入数据,写入ostringstream(基于读取的数据),然后必须ostringstream不时写入某个地方(例如,在读取某些字符序列之后)内置的字符串,然后开始建立一个新的字符串。
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C++
typedef入门问题
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续