例如
class Test { public: void setVal(const std::string& str) { this.isVal = str; //This will error out } private: string isVal; };
Chris Jester.. 33
在C++中,this
是一个指针(与引用相对).所以你必须改为说this->isVal
.
在C++中,this
是一个指针(与引用相对).所以你必须改为说this->isVal
.
除了克里斯的回答,您还可以:
(*this).isVal = str;
然而,做克里斯所说的更好,因为它更正统.这只是说明在调用指针之前需要取消引用指针.
您也不需要this
显式使用来访问成员变量/方法.你可以简单地说:
isVal = str;