c++远征之模板篇——运算符重载
生活随笔
收集整理的這篇文章主要介紹了
c++远征之模板篇——运算符重载
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
以下內(nèi)容源于慕課網(wǎng)的學(xué)習(xí)整理,如有侵權(quán),請(qǐng)告知?jiǎng)h除。
一、運(yùn)算符重載的概念
- 給原有的運(yùn)算符賦予新的功能。
- 比如下面的截圖,本來(lái)加號(hào)+并不具備坐標(biāo)的相加的功能,但是通過(guò)運(yùn)算符重載可以實(shí)現(xiàn)該功能。
二、運(yùn)算符重載的本質(zhì)
- 本質(zhì)是函數(shù)的重載;
- 重載方式:友元函數(shù)重載、成員函數(shù)重載。即定義成一個(gè)類(lèi)的友元函數(shù),或者成員函數(shù)。
三、運(yùn)算符重載的關(guān)鍵字operator
1、一元運(yùn)算符重載
負(fù)號(hào)的重載
(1)成員函數(shù)重載
- 雖然它不含有參數(shù),但是它作為普通的成員函數(shù),還是有一個(gè)隱性的this指針作為參數(shù)的。
- 函數(shù)返回應(yīng)該是它本身(只是成員取反了而已),因此應(yīng)該是返回值是“類(lèi)&”的形式。
? ?
- 注意到它也是一個(gè)函數(shù),因此有兩種方式表示。
(2)友元函數(shù)重載
- 需要傳入?yún)?shù)
++符號(hào)的重載
(1)前置++符號(hào)重載
- 下面是成員函數(shù)重載的形式
(2)后置++符號(hào)重載
- 返回值不再是引用,而是一個(gè)對(duì)象。為什么呢?
- 傳入int,標(biāo)明++符號(hào)是后置的而已,沒(méi)有其他用途。
2、二元運(yùn)算符重載
加號(hào)運(yùn)算符的重載
(1)成員函數(shù)重載形式
(2)友元函數(shù)重載形式
輸出運(yùn)算符的重載
- 采用友元函數(shù)重載的方式,不能采用成員函數(shù)重載的方式。
索引運(yùn)算符的重載 [ ]
- 索引運(yùn)算符不能使用友元函數(shù)重載的方式,只能用成員函數(shù)重載的方式
??
?
總結(jié)
以上是生活随笔為你收集整理的c++远征之模板篇——运算符重载的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 三菱plc与计算机无协议通讯,三菱PLC
- 下一篇: 四季星空