const成员函数到底修饰的是什么
C++中,以const修饰成员函数,实际修饰的是this指针,意思是不能修改this指针指向的内存空间。
class ProcessInfo { private: string m_name; public: string& name() const { return m_name; } };
这个例子中,name()
方法是无效的,因为它以const修饰,但却返回了非const string&
。要么将其修改为const string& name() const
,要么将其修改为string& name()
。