c 中this指標基本概念和使用

2021-09-25 08:10:41 字數 918 閱讀 3638

class person

; //非靜態成員函式 不屬於物件身上

static int m_b;//靜態成員函式,不屬於物件上

static void fun2(){};//靜態成員函式 ,不屬於物件身上

//double m_c;//12錯誤 16正確,解決方法#pragma pack(1)

};void test02()

c++編譯器給每個「成員函式「增加了乙個隱藏的指標引數,讓該指 針指向當前物件(函式執行時呼叫該函式的物件),在函式體中所有成員變數的操作,都是通過該指標去訪 問。只不過所有的操作對使用者是透明的,即使用者不需要來傳遞,編譯器自動完成。

指標永遠指向當前物件

解決命名衝突

*this指向物件的本體

非靜態成員函式才有this指標

this指標的型別:

類型別* const

只能在「成員函式」的內部使用

this指標本質上其實是乙個成員函式的形參,是物件呼叫成員函式時,將物件位址作為實參傳遞給this 形參。所以物件中不儲存this指標。

this指標是成員函式第乙個隱含的指標形參,一般情況由編譯器通過ecx暫存器自動傳遞,不需要使用者 傳遞

#includeusing namespace std;

// this 可以解決命名衝突

class person

//對比年齡

void compareage(person &p)

else

}//年齡相加

person& plusage(person &p)

int age;

};void test01()

int main()

指標 基本概念)

指標基本概念 如果pointer 1 a,則 pointer 1相當於 a pointer 2 pointer 1 相當於pointer 2 a 將a的位址賦值給pointer 2 a 相當於 變數a 相當於 pointer 1 pointer 1 相當於a include main 輸出結果 輸出...

基本概念 C 基本概念

由於工作中需要用到c 編寫的一些工具,有時候需要根據需求修改或者定製工具,所以現在不得不學習一下c 的基礎語法,此為筆記,不成章法!機器語言 組合語言 高階語言 面向過程的程式設計方法 物件導向的程式設計方法 泛型程式設計方法 1 演算法設計 2 源程式編輯 3 編譯 4 連線 5 執行除錯 輸入裝...

指標的基本概念及使用

指標 通過位址能找到所需的變數單元,因此說,位址指向該變數單元,將位址形象化的稱為指標 可理解為位址就是指標 指標的作用 通過指標間接訪問記憶體 指標變數的定義 型別名 指標變數名 乙個變數的指標的含義包含兩個方面,一是儲存單元的純位址,二是指向儲存單元的資料型別,故定義指標變數時要指定基型別,用來...