C++運算符重載/總結

運算符重載的實質

運算符重載其實是特殊形式的函數重載。在C++編譯系統中,運算符的功能都是通過調用相應的函數實現的。這類函數被稱爲運算符函數,由關鍵字operator和對應的運算符組成函數名。運算符的操作數即爲函數的形參。例如,兩個int型數據相加,5+2;在編譯時解釋爲operator+(5,2);。因此運算符重載,實質上就是運算函數函數的重載。值得注意的是,C++中不允許對”.”,”::”,”*”,”?:”四種運算符進行重載。前三種運算符重載容易出現不必要的麻煩,而條件運算符則不值得重載。
此外,=、()、[ ] 、-> 四種運算符只能用類運算符來重載。

典型運算符重載舉例

插入符<<重載
插入符函數:
ostream &operator <<(ostream &output,類名 & 對象名)
{...//函數代碼
return output;}

操作數說明: output是ostream類的對象的引用,即cout的別名
提取符重載同理,
istream &operator >>(istream&input,類名 &對象名)
{ ...//函數代碼
return input;}

爲了區別 前綴運算符和後綴運算符++,- -,規定後綴運算符有一個int形參,不用給出參數名,僅僅作爲區別標記。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章