參考C++ Primer (3rd)的13.4章節
每個類成員函數都含有一個指向被調用對象的指針,這個指針被稱為this。
是以:
this表示被調用對象的指針;
*this表示被調用對象本身;
inline void Screen::home()
{
this->_cursor = 0;
}
此處this表示被調用對象的指針。this->_cursor表示被調用對象的成員變量_cursor,此處對該成員變量指派。
inline vec3& vec3::operator+=(const vec3 &v)
{
e[0] += v.e[0];
e[1] += v.e[1];
e[2] += v.e[2];
return *this;
}
由于函數定義的函數傳回是引用類型,即傳回的不是值或者指針,而是對象本身。是以,此處需要return *this來傳回對象本身,而不是return this(傳回的是指針)。