Posted on 2009-03-21 15:43
kang 閱讀(876)
評論(0) 編輯 收藏 引用 所屬分類:
筆記
1、重載是指在同一個類中函數(shù)名相同,但參數(shù)類型或參數(shù)個數(shù)不同。對于只有返回值類型不同,大部分編譯器不支持。同時,重載函數(shù)中切記默認參數(shù)的使用,如:int input();與int input(int num=0);在使用input()函數(shù)時,編譯器不知道調(diào)用哪一個函數(shù),而在編譯時產(chǎn)生錯誤。
重載可用vitrual關(guān)鍵字修飾,也可不用。
2、覆蓋是指在基類與其派生類之間,函數(shù)的聲明一致(參數(shù)與返回值類型,以及參數(shù)個數(shù)),同時基類函數(shù)用vitual關(guān)鍵字修飾。
3、隱藏是指在基類與其派生類之間,若派生類的函數(shù)與基類的函數(shù)同名,返回值和參數(shù)類型個數(shù)也一致,而基類中該函數(shù)并未用virtual關(guān)鍵字修飾,此時基類的函數(shù)將被隱藏。若基類的函數(shù)已用或未用virtual關(guān)鍵字修飾,只要派生類中存在與其同名函數(shù),在返回值或參數(shù)類型或個數(shù)上不同,基類的函數(shù)將被隱藏。