多型是使用虛函式實現的,虛函式用於繼承結構層次的父類與子類中,除了基類與子類的函式名必須相同外,連引數型別、個數和順序都要相同,也就是說,父類和子類的虛函式不能只是名字過載,而是其宣告要一模一樣。否則,儘管標記virtual,也不能發生多型。
一種例外的情形,返回型別例外。
void fn(int);
int fn(int);
如果父類和子類的虛函式正如上述兩個函式的差異,可以多型。
虛函式的若干限制:
1.只有類的成員函式才能宣告為虛函式
因為虛函式僅適用於有繼承關係的類物件,普通函式不能宣告為虛函式。
2.靜態成員函式不能是虛函式
因為靜態成員函式不受物件的**,即使形式上的**,實際上也沒有任何物件的資訊,只有類的資訊。
3.內聯函式不能是虛函式
因為內聯函式是不能在執行中動態的確定其位置的。
4.建構函式不能是虛函式
因為構造時,物件還是一片未定型的**地,只有在構造完成後,物件才能成為乙個類的名副其實的物件。
5析構函式可以是虛函式,且通常宣告為虛函式。 1
多型注意事項
即同一方法可以根據傳送物件的不同而採用多種不同的行為方式 乙個物件的實際型別是確定的,但是可以指向物件的引用型別有很多 多型注意事項 多型是方法的多型,屬性沒有多型 父類和子類,有聯絡 否則會報錯 型別轉換異常!classcastexception 存在條件 繼承關係,方法需要重寫,父類引用子類物件...
C 多型以及其注意事項
1 虛函式 覆蓋以及多型的概念 1 class 基類 的成員函式,稱為虛函式或方法。2 覆蓋 如果子類的成員函式和基類的虛函式具有 相同 的函式原型,那麼該成員函式就也是虛函式,無論其是否帶有virtual關鍵字,且對基類中的虛函式構成覆蓋。class 子類 public 基類 3 多型 如果子類提...
LCD使用注意事項
a.lcd使用注意事項 1.確保是在電源關閉的狀態下拔插線纜 2.對液晶屏進行固定安裝時,注意使整個液晶屏保持平整,避免外力導致液晶屏 彎曲 扭曲 3.一定要小心液晶屏的表面偏光片,避免被堅硬物體劃傷 決不能將堅硬物品置於液晶屏之上 4.如果水滴長時間滯留在液晶模組上,可能導致變色或出現汙斑,所以務...