C++運(yùn)算符重載
重載運(yùn)算符實(shí)質(zhì)是編寫一個(gè)執(zhí)行相應(yīng)操作的函數(shù),當(dāng)運(yùn)算符被使用時(shí),實(shí)質(zhì)是函數(shù)被調(diào)用,這是編譯器完成的轉(zhuǎn)換工作。
重載的運(yùn)算符函數(shù),都有個(gè)特殊的函數(shù)名:operator【運(yùn)算符】。operator為關(guān)鍵字。
如重載加法運(yùn)算符: operator+
乘法運(yùn)算符: operator*
C++支持運(yùn)算符重載,使得類被封裝得更加完美,但是這也增加了其復(fù)雜性。正因?yàn)槿绱?,Java沒有支持運(yùn)算符重載。
有趣的是,當(dāng)我在使用Java的時(shí)候,并沒有覺得Java不支持運(yùn)算符重載有多么不方便,但當(dāng)我使用C++的時(shí)候,又覺得支持運(yùn)算符重載多么的酷。顯然,我們常說的語言信仰,只不過是被語言本身洗腦了
廢話完了。開始。
可以重載的運(yùn)算符
備注 | ||||||||
---|---|---|---|---|---|---|---|---|
與比較相關(guān),最好成對重載,或者全部重載。返回bool,或者int | > | < | >= | <= | == | != | ||
我想了解如何學(xué)習(xí) |