使用operator關鍵字來過載內建運算子,或提供類或結構宣告中的使用者定義轉換。
下面是分數的乙個極其簡化的類。該類過載了 + 和 * 運算子,以執行分數加法和乘法;同時提供了將 fraction 型別轉換為 double 型別的轉換運算子。
// cs_keyword_operator.csusing system;
class fraction
// overload operator +
public static fraction operator +(fraction a, fraction b)
// overload operator *
public static fraction operator *(fraction a, fraction b)
// user-defined conversion from fraction to double
public static implicit operator double(fraction f)
}class test
}
輸出
0.880952380952381
C 關鍵字operator用法
1 operator 用於型別轉換函式 型別轉換函式的特徵 1 型轉換函式定義在源類中 2 須由 operator 修飾,函式名稱是目標型別名或目標類名 3 函式沒有引數,沒有返回值,但是有return 語句,在return語句中返回目標型別資料或呼叫目標類的建構函式。型別轉換函式主要有兩類 1 物...
C 中的operator關鍵字
operator是c 中的關鍵字,它和運算子一起使用,表示乙個運算子函式,理解時應將operator 整體上視為乙個函式名.這是c 擴充套件運算子功能的方法,雖然樣子古怪,但也可以理解 一方面要是運算子的使用方法與原來的一致,另一方面擴充套件功能只能通過函式的方式 c 中,功能都是由函式是實現的 一...
c 學習記錄 operator 過載
effective c 的確是一本神書,閱讀起來的感覺可以用酣暢淋漓來形容,似乎很多以前沒有在意的小細節都變得豁然開朗了起來,在條款10中,scott建議我們過載操作符 時,返回乙個 this的引用。賦值,我們往往可以寫作連鎖形式 int x,y,z x y z 10 賦值採用了右結合律,所以以上連...