1)物件中的vptr指標什麼時候被初始化?
物件在建立的時,由編譯器對vptr指標進行初始化
只有當物件的構造完全結束後vptr的指向才最終確定
父類物件的vptr指向父類虛函式表
子類物件的vptr指向子類虛函式表
二 父類指標步長和子類指標步長不一致時
class parent
virtual void print()
private:
int a; };
//成功 ,一次偶然的成功 ,必然的失敗更可怕
class child : public parent
*/ child(int b = 0):parent(0)
virtual void print()
private:
//int b; };
void howtoplay(parent *base)
void main() ;
pp = array;
pc = array;
pp->print();
pc->print(); //多型發生
pp++;
pc++;
pp->print();
pc->print(); //多型發生
pp++;
pc++;
pp->print();
pc->print(); //多型發生
c 複習要點總結之九 繼承二
一 繼承中的同名成員變數處理方法 1 當子類成員變數與父類成員變數同名時 2 子類依然從父類繼承同名成員 3 在子類中通過作用域分辨符 進行同名成員區分 在派生類中使用基類的同名成員,顯式地使用類名限定符 4 同名成員儲存在記憶體中的不同位置 繼承和static關鍵字在一起會產生什麼現象哪?理論知識...
C 複習要點總結之 友元
在c 中,類的成員訪問許可權有三種,private,protected,public。private 類中的private成員只能夠在本類中或者友元訪問,子類或外界無法訪問私有成員。protected 類中的protected成員只允許本類或者子類中訪問,外界無法訪問,定義類時如果希望成員被子類繼承...
個人紀錄 C 面試總結之一(多型)
多型分為靜態多型 動態多型。靜態多型,過載,就是在同一作用域內,函式名相同,引數不同,根據引數來確定呼叫。動態多型,重寫,主要是虛函式,父類指標指向子類物件,接著再用指標呼叫被重寫函式。乙個類有虛函式,就有虛函式表,虛函式表裡存放的就是每個虛函式的位址,若子類未重寫虛函式,那麼虛函式表中的虛函式的位...