1.虛繼承,處理b,c繼承a,而d又繼承bc的問題
#include using namespace std;
class a
return a;
}int gcb(int a, int b)
5.求絕對值:a>0?a:-a;
6.父子類之間沒有過載,同名覆蓋
7.過載與返回型別無關
8.建立子類時,如果沒有在初始化列表中初始化父類,預設呼叫父類無產建構函式
9.無名物件,語句結束立即釋放
10.要求類有相應引數的建構函式則:a a = a(40); a a = (a)40; a a = 40;強制型別轉換,預設有低階型別轉向高階型別
11.常量物件不能呼叫普通成員函式,普通物件優先呼叫普通成員函式
12.class可以繼承struct
虛析構和純虛析構 C
解決父類無法釋放子類的堆區記憶體問題。注意 純虛析構無法例項化 虛析構和純虛析構 多型使用時,如果子類有物件開闢到堆區,那麼父類指標在釋放時無法呼叫到子類的析構 解決方式 將父類中的析構函式改為虛析構或者純虛析構 虛析構和純虛析構的共性 可以解決父類指標釋放子類物件 都需要有具體的函式實現虛析構和純...
C 虛析構函式 純虛析構函式
虛析構函式 析構函式的工作方式是 最底層的派生類 most derived class 的析構函式最先被呼叫,然後呼叫每乙個基類的析構函式。因為在c 中,當乙個派生類物件通過使用乙個基類指標刪除,而這個基類有乙個非虛的析構函式,則結果是未定義的。執行時比較有代表性的後果是物件的派生部分不會被銷毀。然...
C 虛析構函式 純虛析構函式
虛析構函式 析構函式的工作方式是 最底層的派生類 most derived class 的析構函式最先被呼叫,然後呼叫每乙個基類的析構函式。因為在c 中,當乙個派生類物件通過使用乙個基類指標刪除,而這個基類有乙個非虛的析構函式,則結果是未定義的。執行時比較有代表性的後果是物件的派生部分不會被銷毀。然...