在c++中,每乙個類的成員函式中,都隱藏了乙個this指標,該指標是指向乙個正在被某個成員函式操作的物件的指標,當物件呼叫成員函式時,系統會先將該物件的位址傳給this指標,然後再呼叫成員函式,每次成員函式訪問物件的成員時,都會使用this指標。
下面用一段**來解釋:
#include class a
a( )
void copy(a &aa);
int returna()
void reyurna()
private:
int a, int b;//私有成員變數
};void a::copy(a &aa)//訪問類a裡面的成員函式copy
int main ()
}
有關this指標的問題:
1:this指標是在什麼時候建立的?
this指標在成員函式開始執行前構造,在成員執行結束時清除
2:this指標存放在什麼位置?
其會因編譯器不同,可能是棧,也可能是暫存器,或者全域性變數。
3:this指標是怎麼傳遞類中的函式的?
通過函式引數的首引數來傳遞的
4:在c++中類和結構的區別?
類的成員預設為private(私有) 結構預設為public(共有)
this在其中作用相同。
5:this只能在成員函式中使用,全域性函式,靜態函式都不能使用this。
6:this並不是物件的一部分,不會影響sizeof(物件)的結果
彙編 第二節
第二節 cpu主要有有運算器,控制器,暫存器,三部分組成 8086 cpu有14個暫存器,如ax,bx,cx,dx,si。8086所有暫存器都是16位的,可以存放2個byte即位元組,16位二進位制數 所能存放的最大數值是 11111111111 2 16 1 從0開始,所以 1嘛 通用暫存器為4個...
函式第二節
coding utf 8 1.定義乙個方法get num num num引數是列表型別,判斷列表裡面的元素為數字型別。其他型別則報錯,並且返回乙個偶數列表 注 列表裡面的元素為偶數 def get num l l for i in l 判斷列表l的元素是否都為整形 if not isinstance...
第二節練習
a b 2 鏈式賦值 print a print b c id a 位址print c c type a 型別 print c a,b 2,3 系列解包賦值 a,b b,a print a print b 基本運算 print 3 2 print 30 5 print 30 5 print 30 5...