乙個程式,讓你理解運算子過載操作

2022-03-13 14:50:01 字數 1108 閱讀 4281

1

//實現運算子過載

2 #include3 #include4

using

namespace

std;

5namespace

gong69

namespace

var10

13class

matrix14;

17 ~matrix(){};

18int

array[gong::maxn][gong::maxn];

19 matrix operator + (const matrix & aa) const ; //

實現函式a+b過載,類外定義

20 matrix operator - (const matrix &aa ) const

//實現函式a-b過載

2132}33

return

dd;34}35

/*注意《,》這樣的運算子不能定義為類過載函式

36雖然不能「過載」為成員函式,但是可以定義為新的成員函式,只不過使用習慣和常例不符而已。

37*/

38 ostream operator

<< (ostream &out) const

3948

out<

50return

out;51}

52};

53 matrix matrix::operator +(const matrix & aa) const

5464}65

return

dd;66}67

intmain()

6878

}79 c=a+b;

80//

cout<81 c<

82 c=a-b;

83 c<

84return0;

85 }

不妨設 a[2][2]=                       b[2][2]=

3 ,4}

在vc上運算的結果為:

理解運算子的操作

在數學中,運算是一種數 算,它包含零或多個輸入值 稱為運算元 以產生輸出值。常用操作 如加法 使用表示操作的特殊符號 如 這些符號稱為運算子。程式設計人員的工作方式相同,但名稱可能並不總是符號。運營商的工作類似於函式,輸入引數並返回乙個值,但它們更簡明。例如,4 2 3是讀比新增更容易 4,多 2,...

深入理解 運算子的過載

今天看到這麼一道題 templateclass bignumber bignumber operator bignumber b 已知b1,b2是bignumber的兩個物件,則下列表示式中錯誤的是?a 3 3 b b1 3 c b1 b2 d3 b1題幹中的意思不就是類裡面過載了乙個 法運算子麼,...

過載運算子 乙個例子

這是乙個operatoroverride專案裡的預設檔案的程式,需要呼叫下面自己建立的過載類檔案number using system using system.collections.generic using system.linq using system.text namespace ope...