1不妨設 a[2][2]= b[2][2]=//實現運算子過載
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 }
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...