我正在尝试在 c++11 中创建自己的字符串类,但我遇到了一些问题。将我的课程与 std::string 课程进行比较,我无法弄清楚如何使用
std::string.at(int) = 'a'; 方法/重载。
我在自己的类中创建了 at(int) 方法:
int at(int index)
{
if(index <0 || index > size-1) {throw std::out_of_range("Error, index out of range");}
return data[index];
}
如果我只使用它效果很好:
MyString.at(2);
在主文件中:
MyString = "Hello world!"; //Works fine!
MyString.at(2)='a'; //Gives, Error: expressino must be a modifiable Ivalue.
对此的任何帮助都会很棒,谢谢!