虛函式:
純虛函式:
普通函式:
虛析構函式:
其他
靜態成員函式實現隱藏,當前檔案可見,出了這個檔案就不可見了,所以多個檔案可以定義相同的名字。出了作用域之後不銷毀,程式結束才銷毀。靜態成員函式不屬於物件,它與任何物件都是無關的,因此靜態成員函式沒有this指標。也就是說:非靜態成員函式有this指標,而靜態成員函式沒有this指標。由此決定了靜態成員函式不能訪問本類中的非靜態成員。靜態成員函式可以直接引用本類中的靜態資料成員。因為靜態資料成員同樣屬於類的,可以直接引用。 並不是絕對不能訪問本類中的非靜態成員,只是不能進行預設訪問,因此無法知道應該去找哪個物件,如果非要引用本類中的非靜態成員,應該加物件和成員運算子「.」。 例如:cout《靜態成員變數除了隱藏,每個物件共有,記憶體中只儲存乙份,初始化必須在類體外去進行初始化。
不可繼承的類
1、將基類的建構函式設定成private,然後protected繼承,這樣子類就不能訪問父類的建構函式,不能像正常類那樣去例項化物件。
2、或者類似於單例模式,定義乙個靜態函式或者友元函式來生成類的例項。將基類建構函式、析構函式設定為private, 在基類裡面宣告friend 類,
虛繼承
為了消除菱形繼承的二義性
C 虛函式,純虛函式,虛析構和純虛析構
c 虛函式 定義為虛函式是為了允許用基類的指標來呼叫子類的這個函式,是需要具體實現的 virtual void funtion1 c 純虛函式 一 定義 純虛函式是在基類中宣告的虛函式,它在基類中沒有定義,但要求任何派生類都要定義自己的實現方法。在基類中實現純虛函式的方法是在函式原型後加 0 vir...
虛函式 純虛函式 虛函式與析構函式
一 虛函式 只有用virtual宣告類的成員函式,使之成為虛函式,不能將類外的普通函式宣告為虛函式。因為虛函式的作用是允許在派生類中對基類的虛函式重新定義。所以虛函式只能用於類的繼承層次結構中。乙個成員函式被宣告為虛函式後,在同一類族中的類就不能再定義乙個非virtual的但與該虛函式具有相同的引數...
C 虛析構函式 純虛析構函式
虛析構函式 析構函式的工作方式是 最底層的派生類 most derived class 的析構函式最先被呼叫,然後呼叫每乙個基類的析構函式。因為在c 中,當乙個派生類物件通過使用乙個基類指標刪除,而這個基類有乙個非虛的析構函式,則結果是未定義的。執行時比較有代表性的後果是物件的派生部分不會被銷毀。然...