问题描述
std::string_view view;
如何向其附加类似const char *的内容?例如:
std::string_view view = "hello";
view += " world"; // Doesn't work
此外,如何创建具有指定大小的string_view
?
例如:
std::string_view view(100); // Creates a string_view with an initial size of 100 bytes
解决方法
std::string_view
是对存储在内存中其他位置的现有char[]
缓冲区或可访问范围为char
的{{1}}的只读视图迭代器。您无法将新数据添加到std::string_view
。
对于您要尝试的操作,您需要使用std::string
,例如:
std::string s = "hello";
s += " world";
std::string s(100,'\0');