首先,閱讀之前要先搞清楚什么是運算符、函數(shù)重載。函數(shù)重載就是在一個范圍內(nèi)為一個函數(shù)聲明多個實現(xiàn)方式,函數(shù)名必須一致。
成都創(chuàng)新互聯(lián)公司是專業(yè)的網(wǎng)站建設(shè)公司,提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)站設(shè)計等網(wǎng)站開發(fā)一體化解決方案;包括H5開發(fā),小程序開發(fā),網(wǎng)站定制,企業(yè)網(wǎng)站建設(shè),商城網(wǎng)站定制開發(fā),響應(yīng)式網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè),軟件開發(fā),軟文營銷,網(wǎng)站營銷。歡迎做網(wǎng)站的企業(yè)前來合作洽談,成都創(chuàng)新互聯(lián)公司將竭誠為您服務(wù)!
那么C++運算符是否可以重載呢?可以!先弄清什么時候需要進行運算符重載:
假設(shè),你有一個類或者結(jié)構(gòu)體,想通過 +、-、*、/ 這種最基本的運算符直接進行計算,又或者想用 ==、|| 直接進行比較。
這時候運算符重載的作用就來了。
C++當(dāng)中的運算符重載是通過 operator 關(guān)鍵字來實現(xiàn)的,當(dāng)你定義了類或結(jié)構(gòu)體后,編譯器肯定無法智能地對類本身進行運算及比較。因此,需要根據(jù)實際需要進行運算符的重載。
下面一段代碼是在一個類中對 = 進行了一個最簡單的重載:
void operator=(const DataPack &in) { this->name = in.name; this->value = in.value; };