我不明白为什么当我从访问器返回一个char数组时出现错误信息。
public:
const char *getString() {
return _strPtr;
}
private:
char* _strPtr;
int _strLen;
然后我试图访问类
中的指针_strLen = strlen(String.getString());
但我收到错误消息:候选者是const char * getString();
我现在看不出我做错了什么
提前致谢!!!
String String::operator=(const String& string) {
// code .....
_strLen = strlen(string.getString());
//code ...
}
答案 0 :(得分:3)
运算符的参数是const
引用,因此调用的方法必须是const
:
const char* getString() const { .... }
^^^^^