定義虛函式要遵循的規則

2021-10-21 17:44:41 字數 387 閱讀 9497

1.只有成員函式才能宣告虛函式,因為虛函式僅適用於有繼承關係的類物件,所以普通函式和友元函式都不能宣告虛函式

2.虛函式的宣告只能出現在類宣告中的函式原型宣告中,而不能出現在成員函式的函式體上。

3.通過定義虛函式來使用c++語言提供的多型性機制時,派生類應該是從基類公有派生的。

4.類的靜態成員函式不可以定義為虛函式,因為靜態成員函式不受限於某個物件。

5.類的建構函式不可以定義為虛函式,多型是指不同物件對同一訊息有不同的行為特性,虛函式作為執行過程中的多型的基礎主要針對物件的,而建構函式是在物件產生之前執行的,因而虛建構函式是沒有意義的

6.析構函式可以定義為虛函式,而且通常被宣告為虛函式

7.內聯函式不能宣告為虛函式,因為內聯函式不能在執行中動態確定其所在位置。

企業知識管理系統要遵循什麼規則

大家都知道,不管是任何時候,企業的發展都會依賴於企業自身的技術和知識來進行生產活動。特別是現在,它已經進入了知識經濟和資訊經濟時代。在現代社會的發展中,企業之間的競爭也越來越激烈,並且不斷的體現在對於企業知識資訊的獲取與利用上。那麼企業知識管理系統是否就是好的呢?企業知識管理系統要遵循什麼規則呢?1...

為什麼析構函式要定義為虛函式

include using namespace std class a virtual a a void fun protected private class b public a b int main 當a的析構函式宣告為虛函式時,執行結果如下 當a的析構函式為普通函式時,執行結果如下 對比可得...

析構函式為什麼要定義為虛函式

1.為什麼基類的析構函式是虛函式?在實現多型時,當用基類操作派生類,在析構時防止只析構基類而不析構派生類的狀況發生。下面 網路 源位址 a.第一段 includeusing namespace std class clxbase clxbase void dosomething class clxd...