過載操作符
一.過載操作符的定義
1.過載操作符的結構:
返回型別
operator
需要過載的操作符
(形參列表)
注意:形引數目應和運算元數目相同。
2.過載操作符的幾條注意事項:
1)過載的操作符名不能通過連線其他合法符號來建立任何新的操作符。如:**
2)過載操作符必須具備至少乙個類型別或列舉型別的運算元。
3)過載後的操作符的優先順序和結合性是固定的。
4)不再具備短路徑求值得特性。如:
||&&。5)
過載操作符可以定義為類成員與非成員。如果是類成員,其形參看起來比運算元數目少
1。隱含了
this
指標,指向該類本身。
6)如果過載操作符定義為非成員,通常必須將它們設定為所操作類的友元。因為有時需要訪問該類的私有成員。
如:class sales_item
http://blog.csdn.net/durongjian/archive/2008/12/26/3613120.aspx 另外的資料
C 操作符過載
1.作為成員過載 class myclass public myclass operator const myclass d cons friend myclass operator const myclass a1,const myclass a2 關於返回值型別的討論 呼叫者堆疊裡返回乙個物件效...
c 操作符過載
過載操作符 一 限制 1 不能增加新的操作符 2 有些操作符不能過載,如.物件中的訪問成員 作用域解析操作符 sizeof 三元操作符 3 不能改變操作符的元數,元數是指與操作符相關的引數或運算元個數。比如一元操作符 只能應用於乙個操作符 4 不能改變操作符的優先順序 5 不能重新定義內建型別的操作...
C 操作符過載
最近看了操作符過載,c primer 中提到許多,但是我看完之後沒啥特別的印象,所以整理一下。1 不能過載的操作符 2過載操作符必須具有乙個類型別的運算元 3優先順序及結合性是固定的 4作為類成員的過載函式,其形參比運算元少1,是因為有乙個隱含的this參,限定為第乙個運算元 5當過載函式作為非成員...