多型相關面試題

2021-09-19 05:30:48 字數 656 閱讀 5703

多型:同樣的呼叫語句有多種不同的表現形態;(同樣乙個函式在不同的子類、父類中穿梭的時候表現出不同的形態。)

有繼承、有virtual重寫、有父類指標指向子類物件。

是通過虛函式重寫實現。virtual關鍵字,告訴編譯器這個函式要支援多型;不是根據指標型別判斷如何呼叫;而是要根據指標所指向的實際物件型別來判斷如何呼叫。

動態聯編(指在執行時才確定是父類還是子類的函式)vs靜態聯編(指在編譯時就確定如何執行這個函式)。根據實際的物件型別來判斷重寫函式的呼叫。

它是設計模式的基礎,是框架的基石。

虛函式表的函式指標做函式引數。

c函式指標是c++至高無上的榮耀。c函式指標一般有兩種用法(正、反)。

與面試官展開討論。

(c++編譯器提前布局了乙個vptr指標,通過vptr指標找到虛函式表,然後找到函式的入口位址來動態的進行遲邦定。)

必須在同乙個類中進行;

子類無法過載父類的函式,父類重名函式將被名稱覆蓋;

過載是在編譯期間根據引數型別和個數決定函式呼叫。

必須發生於父類與子類之間;

並且父類與子類中的函式必須有完全相同的原型;

使用virtual宣告之後能夠產生多型(如果不使用virtual,那叫重定義)

多型是在執行期間根據具體物件的型別決定函式呼叫。

不能的

多型相關的面試題

1.如何理解多型。多型的實現效果 同樣的呼叫語句有多種的表現形態 多型實現的三個條件 有繼承 有virtual重寫 有父類指標 引用 指向子類物件 多型的c 實現 virtual關鍵字,告訴編譯器這個函式要支援多型 不是根據指標型別判斷如何呼叫 而是根據指標所指向的實際物件型別來判斷如何呼叫 多型的...

C 多型繼承相關面試題

一 相關概念 類的編譯順序 類名 成員名 成員方法體 類的構造順序 成員物件 類物件 子類的構造 父類 子類 子類的析構 子類 父類 過載 函式名相同 引數列表不同 作用域相同 隱藏 子類隱藏父類中同名的成員方法 覆蓋 子類覆蓋父類中相同的許成員方法 動多型 繼承中的多型 執行時期決定的多型 靜多型...

多型面試題

題目的 如下 class a public string show a obj class b extends a public string show a obj class c extends b class d extends b a a1 new a a a2 new b b b new b...