1. 程式人生 > >重寫、過載、重定義

重寫、過載、重定義

(1)重寫(override):重寫也可以看做覆蓋,子類重新定義父類中具有相同名稱和引數的虛擬函式,函式特徵相同,但函式的具體實現不同,它主要在繼承關係中出現。被重寫的函式不能是static的,但必須是virtual的。

(2)過載(overload):過載是函式名相同,引數列表不同,過載只是在類的內部存在,但是不能返回型別來判斷。

(3)重定義:重定義也叫作隱藏,子類重新定義父類中具有的相同名稱的非虛擬函式。如果一個類存在和父類相同的函式,則這個類將會覆蓋其父類的方法,只能在呼叫的時候強制轉換為父類型別,否則對子類和父類做類似的過載的呼叫是不能成功的。