虛基類的簡單應用 C 程式設計

2021-08-28 09:10:18 字數 686 閱讀 2637

c++編譯系統只執行最後的派生類對虛基類的建構函式的呼叫,而忽略虛基類的其他派生類對虛基類的建構函式的呼叫,這就保證了虛基類的資料成員不會被多次初始化。

/*多重繼承派生類-虛基類*/

#include #include #include using namespace std;

class person//基類-人

protected:

int age;

string ***;

};class teacher:virtual public person//派生類-老師

protected:

int num;

string titl;

};class student:virtual public person//派生類-學生

protected:

int sorce;

};class graduate:public teacher,public student//派生類-在職研究生

void print();

private:

int wage; };

void graduate::print()

int main()//主函式

C 的虛基類

虛基類 當在多條繼承路徑上有乙個公共的基類,在這些路徑中的某幾條匯合處,這個公共的基類就會產生多個例項 或多個副本 若只想儲存這個基類的乙個例項,可以將這個公共基類說明為 虛基類 虛基類.在繼承中產生歧義的原因有可能基類是繼承類繼承了基類多次,從而產生了多個拷貝,即不止一次的通過多個路徑繼承類在記憶...

c 的類 虛基類 六

什麼是虛基類 就是他的派生類有兩個或者以上的派生類 通過虛繼承,這樣就可以避免派生類有多個基類的副本 從而減少記憶體消耗 關於繼承可以看我的這一篇新增鏈結描述 include include using namespace std class person class partymember vir...

關於C 虛基類

在繼承時,如果乙個派生類d,從幾個基類中繼承來,如f1,f2 假設有兩個類,也許有更多 而這些基類又繼承自同乙個基類m,那麼在d中就會有關於m的雙重拷貝,在d的物件中,如果使用成員或者函式,就要使用作用域識別符號來辨別該變數或者函式來自f1 or f2.虛基類使得d中關於m的雙重拷貝可以在d中只存放...