下面有课
class A
{
public:
string& getStr()
{
// Do a lot of work to get str
return str
}
const string& getStr() const;
};
我可以在第二个函数中调用第一个函数吗?我想这样做,因为第二个函数与第一个函数有很多相同的代码。不能是这样的:
const string& A::getStr() const
{
// Wrong
A temp;
return temp.getStr();
}
因为添加了一个新的 temp 并且 *this 和 temp 之间的内部状态不同 (*this != temp)。
可以像我描述的那样称呼它吗?