在 C++ 中
当我声明
string string1;
然后我不能像在
中那样按索引分配string1[0] = 'x';
但是如果我先把 string1 = "somestring";然后我就可以通过索引使用分配。
string = "";
不工作
所以我想知道为什么会这样。我认为 std::string 应该具有索引功能。
最佳答案
当您默认构造一个字符串时,它是空的。它的 char 数组没有元素,所以 [0]
不存在。如果你通过给它一个字符串来构造它,比如 "somestring"
,它包含那个字符串并且第零个索引是 s
。
关于c++ - std::string 通过索引赋值似乎不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24101296/