1. 函數重載
條件:
(1)同一個作用域下,函數名相同;
(2)函數的參數列表不同,包括參數列表的個數、或者類型、或順序不同。
使用場景:同一個類中,有多個重載方法,根據傳入參數列表的不同,調用不同的方法。比如add(int a, int b), add(double a, double b)
2. 函數重寫(覆蓋)
條件:
(1)在不同作用域下,基類和子類,函數名相同;
(2)函數的參數列表相同,即子類和基類函數完全相同。
使用場景:多個不同的子類,重寫了父類的虛函數,這樣可以根據生成的具體對象不同,調用不同的方法。
3. 函數重定義(隱藏)
條件:
(1) 子類和父類中,只要函數名相同,就可構成函數重定義;
使用場景:多個不同的子類,重寫了父類的方法,這樣可以根據生成的具體對象不同,調用不同的方法。
待更新。