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

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

C++的算符重載

2019-09-06 23:33:19
字體:
來源:轉載
供稿:網友

                    算符重載的作用是什么?它允許你為類的用戶提供一個直覺的接口。 算符重載允許C/C++的運算符在用戶定義類型(類)上擁有一個用戶定義的意義。重載的算符是函數調用的語法修飾:  
class Fred {
 public:    // …
};

#if 0           // 沒有算符重載:
Fred add(Fred, Fred);
Fred mul(Fred, Fred);

Fred f(Fred a, Fred b, Fred c)
{
 return add(add(mul(a,b), mul(b,c)), mul(c,a)); // 哈哈,多可笑…
}

#else   // 有算符重載:
Fred operator+ (Fred, Fred);
Fred operator* (Fred, Fred);

Fred f(Fred a, Fred b, Fred c)
{
 return a*b + b*c + c*a;
}

#endif



  算符重載的好處是什么?

  通過重載類上的標準算符,你可以發掘類的用戶的直覺。使得用戶程序所用的語言是面向問題的,而不是面向機器的。 最終目標是降低學習曲線并減少錯誤率。



  有什么算符重載的實例?這里有一些算符重載的實例:

myString + yourString 可以連接兩個 std::string 對象

myDate++ 可以增加一個 Date 對象

a * b 可以將兩個 Number 對象相乘

a 可以訪問 Array 對象的某個元素

x = *p 可以反引用一個實際“指向”一個磁盤記錄的 "smart pointer" 主站蜘蛛池模板: 略阳县| 万全县| 呼图壁县| 成安县| 梁山县| 石屏县| 岳普湖县| 客服| 临汾市| 邻水| 高邑县| 独山县| 呼伦贝尔市| 射洪县| 峨山| 武川县| 丹巴县| 探索| 息烽县| 文昌市| 遂川县| 时尚| 许昌县| 乐清市| 合水县| 汉寿县| 隆德县| 平江县| 乌鲁木齐县| 额尔古纳市| 海城市| 永康市| 依安县| 五指山市| 类乌齐县| 迁西县| 平阳县| 蕲春县| 枞阳县| 桂林市| 巴里|