C++中的*this指標
阿新 • • 發佈:2019-02-01
1、每個類中都隱含了this指標成員,不用定義;
2、對於定義的每個物件,this指向當前物件的地址;
3、通過物件呼叫成員函式時,隱含的都要傳遞this指標作為實參;
4、this指標是常量指標,不能指向別的物件;
5、在成員函式中訪問成員資料或其他函式,可以通過this->進行限定,但是通常也是可以省略的。
參考例子:
#include <iostream> using namespace std; //定義一個類 class A { public: int get()const {return i;} //獲取當前資料 void set(int x) { this->i = x; cout <<"this變數儲存的記憶體地址:\t"<<this<<endl; } private: int i; }; int main() { A a; a.set(9); cout <<"物件a的記憶體地址:\t"<<&a<<endl; cout << a.get()<<endl; A b; b.set(999); cout <<"物件b的記憶體地址:\t"<<&b<<endl; cout << b.get()<<endl; return 0; }
輸出結果: