C 覆蓋和隱藏

2021-07-09 08:08:51 字數 640 閱讀 7729

class people 

virtual void getname_different_params()

// 隱藏規則2:

// 1) 函式名相同 && 引數相同

// 2) 無virtual

void getphone_same_params()

// 覆蓋規則:

// 1) 函式名相同 && 引數相同

// 2) 有virtual

virtual void getaddress_same_params()

};class children : public people

virtual void getname_different_params(int)

// 隱藏規則2:

// 1) 函式名相同 && 引數相同

// 2) 無virtual

void getphone_same_params()

// 覆蓋規則:

// 1) 函式名相同 && 引數相同

// 2) 有virtual

virtual void getaddress_same_params()

};void test1()

隱藏和覆蓋 C

我可以給你說說我的理解 我認為隱藏和覆蓋的區別主要體現在 多型上 舉個例子 隱藏和覆蓋 include include using namespace std class a void f class b public a virtual void g int main 結果是 a a b invo...

C 隱藏和覆蓋

1 在c 裡面,只有宣告vitual abstract和帶override的方法能夠被子類重寫 override 2 如果父類方法沒有以上關鍵字,子類又有和父類一樣的方法,那麼,就預設隱藏父類方法,這時候在命名空間後面要加new關鍵字 public newint sayhello 如果不加new關鍵...

C 覆蓋和隱藏

指的是 子類繼承父類屬性 函式 並且自身也有與父類同名的屬性 函式 這是編譯器就會在子類中對父類屬性做乙個隱藏,我們並不能通過子類物件直接點出父類相關屬性或函式,必須要在特定位置上加上父類作用域才可以。指的是 子類繼承父類虛函式,並且對其重寫,這時,我們用乙個父類指標來接收子類物件位址。並通過這個父...