"stringstream" 是否复制构造它的字符串?
Does "stringstream" copy the string on which it is constructed?
像这样的一段代码
std::string s("random;string;");
std::stringstream s_stream(s);
s_stream
复制了 s
吗?
我的意思是,如果在创建 s_stream
之后修改 s
会发生什么?
是的。来自 http://en.cppreference.com/w/cpp/io/basic_stringstream/basic_stringstream
2) Uses a copy of str
as initial contents of the underlying string device. The underlying basic_stringbuf
object is constructed as basic_stringbuf<Char,Traits,Allocator>(str, mode)
.
像这样的一段代码
std::string s("random;string;");
std::stringstream s_stream(s);
s_stream
复制了 s
吗?
我的意思是,如果在创建 s_stream
之后修改 s
会发生什么?
是的。来自 http://en.cppreference.com/w/cpp/io/basic_stringstream/basic_stringstream
2) Uses a copy of
str
as initial contents of the underlying string device. The underlyingbasic_stringbuf
object is constructed asbasic_stringbuf<Char,Traits,Allocator>(str, mode)
.