06 c 養成之路(this 指標)

2021-10-09 14:57:40 字數 419 閱讀 5283

this 是c++中的乙個關鍵字,也是乙個const(常成員)指標。指向當前物件,通過它可以訪問當前物件的所有成員。用->來訪問成員變數或成員函式。

成員函式最終被編譯成與物件無關的普通函式,除了成員變數,會丟失所有資訊,所以編譯時要在成員函式中新增乙個額外的引數,把當前物件的首位址傳入,以此來關聯成員函式和成員變數。這個額外的引數,實際上就是 this,它是成員函式和成員變數關聯的橋梁。它並不出現在**中,而是在編譯階段由編譯器默默地將它新增到引數列表中。

#includeusing namespace std;

#if 1

class dog

};int main()

#endif

06 C 名字控制

建立名字是程式設計過程中一項最基本的活動,當乙個專案很大時,它會不可避免地包含大量名字。c 允許我們對名字的產生和名字的可見性進行控制。我們之前在學習c語言可以通過static關鍵字來使得名字只得在本編譯單元內可見,在c 中我們將通過一種通過命名空間來控制對名字的訪問。在c 中,名稱 name 可以...

06 C 函式高階

01函式預設引數 02函式佔位引數 03函式過載 函式的構成包括五部分 int func int a 返回值型別,函式名,引數列表,函式體,返回語句 void型別可以省略 同名函式,引數列表不同,會發生過載 例如 1.intfunc int a 2.int func int a,int b 3.in...

06 C語言變數

變數的本質 變數的本質其實是程式可操作的儲存區的名稱。c 中每個變數都有特定的型別,型別決定了變數儲存的大小的範圍,在範圍內的值都可以儲存在記憶體中,運算子可應用於變數上。變數的名稱可以由字母 數字和下劃線字元組成。它必須以字母或下劃線開頭。大寫字母和小寫字母是不同的,因為 c 是大小寫敏感的。以下...