国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++多態(tài)

2019-11-11 00:17:40
字體:
供稿:網(wǎng)友

       多態(tài)是面向?qū)ο缶幊痰闹匾匦?,也是C++的一個特性,同樣也是類設(shè)計的重要概念。多態(tài)可以理解是重載,通俗講就是好比是人格分裂癥——一個身體中有好幾種性格。

默認參數(shù)

       默認參數(shù)時C++提供的一項新內(nèi)容,默認參數(shù)指的是當函數(shù)調(diào)用中省略了實參時自動使用的一個值,這樣極大的提高了使用函數(shù)的靈活性。默認參數(shù)不屬于多態(tài),但筆者認為默認參數(shù)也可以提供多態(tài)的特性,可以將默認參數(shù)理解為一種最簡單的重載,代碼不變而只是修改參數(shù)的值。通過函數(shù)原型中賦值給參數(shù)來設(shè)置默認值,由于編譯器通過查看原型來了解函數(shù)所使用的參數(shù)數(shù)目,因此函數(shù)原型也必須將可能的默認參數(shù)告知程序。

函數(shù)重載

       函數(shù)重載(多態(tài))是C++在C語言的基礎(chǔ)上新增的功能,默認參數(shù)能使用不同數(shù)目的參數(shù)調(diào)用同一個函數(shù),而函數(shù)重載能夠使用多個同名的函數(shù)。“多態(tài)”一詞指的是由多種形式,“函數(shù)重載”指的是可以有多個同名的函數(shù),兩個概念是一回事。函數(shù)重載的關(guān)鍵是函數(shù)的參數(shù)列表——也稱為函數(shù)特征標。如果兩個函數(shù)的參數(shù)數(shù)目和類型相同,同時參數(shù)的排列順序也相同,則他們的特征標相同,而變量名是無關(guān)緊要的。C++允許定義名稱相同的函數(shù),條件是它們的特征標不同。        是函數(shù)重載中有幾點需要注意: - 使用被重載的函數(shù)時,需要在函數(shù)調(diào)用中使用正確的參數(shù)類型。 - 編譯器在檢查函數(shù)特征標時,將把引用類型和類型本身視為同一個特征標。 - 匹配函數(shù)時,不區(qū)分const和非const變量,非const變量可以匹配const和非const參數(shù)變量,而const變量只能匹配const參數(shù)變量。 - 函數(shù)重載時,特征標必須不同,返回類型可以不同。 - 重載函數(shù)匹配時,根據(jù)變量的類型調(diào)用最匹配的類型。        當函數(shù)基本上執(zhí)行相同的任務(wù),但使用不同形式的數(shù)據(jù)時,才應(yīng)采用函數(shù)重載,盡可能的使用默認參數(shù)實現(xiàn)相同的目的。

運算符重載

       運算符重載也是一種形式的C++多態(tài),函數(shù)多態(tài)旨在能夠用同名的函數(shù)來完成相同的基本操作,即使這種操作被用于不同的數(shù)據(jù)類型,運算符重載就是將函數(shù)重載的概念擴展到運算符上,允許賦予C++運算符多種含義 ,并且可以將運算符重載擴展到用戶自定義的類型。        要重載運算符,需要使用關(guān)鍵字Operator,后面接一個有效的C++運算符,構(gòu)成運算符函數(shù)的特殊函數(shù)形式。使用重載的運算符時,運算符左側(cè)的對象為調(diào)用對象,右側(cè)的對象是作為參數(shù)被傳遞的對象。在調(diào)用重載運算符時,可以由對象顯式的使用運算符函數(shù)表示法來調(diào)用它。

重載限制

       重載的運算符不必是成員函數(shù),運算符重載其實就是對使用數(shù)據(jù)類型擴充到用戶定義的類型,基本上重載的運算符不改變其原來的含義,具體的限制如下: - 重載后的運算符必須至少有一個操作數(shù)是用戶定義的類型,這將防止用戶為標準類型重載運算符; - 使用運算符時不能違反運算符原來的句法規(guī)則,不能修改運算符的優(yōu)先級; - 只能重載C++中有的運算符,不能創(chuàng)建新的運算符; - C++中存在不能重載的運算符:sizeof,.,::,?,typeid,const_cast,dynamic_cast,reinterPRet_cast,static_cast; - C++中有些運算符只能通過成員函數(shù)進行重載:=,(),[],->。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 偏关县| 凌源市| 阿克陶县| 宜宾市| 德清县| 灵川县| 海淀区| 南昌县| 平和县| 嵊州市| 安泽县| 多伦县| 苏尼特右旗| 安国市| 屏东县| 丘北县| 齐齐哈尔市| 彰化县| 郧西县| 鄂州市| 定远县| 凤翔县| 抚松县| 浏阳市| 沙湾县| 灵武市| 齐齐哈尔市| 新化县| 南康市| 尉氏县| 云霄县| 中阳县| 哈巴河县| 托里县| 玉山县| 突泉县| 临安市| 胶南市| 平湖市| 曲沃县| 关岭|