c 學習記錄 operator 過載

2021-07-01 22:55:38 字數 410 閱讀 6313

《effective c++》的確是一本神書,閱讀起來的感覺可以用酣暢淋漓來形容,似乎很多以前沒有在意的小細節都變得豁然開朗了起來,在條款10中,scott建議我們過載操作符』=』時,返回乙個*this的引用。

賦值,我們往往可以寫作連鎖形式:

int x,y,z;

x =y = z = 10;

賦值採用了右結合律,所以以上連鎖賦值被解析為:

x =(y = (z = 10));
首先15賦值給z,然後z更新後,賦值給y,y更新後賦值給x;

所以為了實現「連鎖賦值」,賦值操作符必須返回乙個reference指向操作符的左側實參。

class a

...};

C 過載operator的示例

include include using namespace std class test test const int a v a test const test t1 v t1.v 以下過載小於號 比較兩個物件的大小 bool operator const test t1 const 比較物件...

C 過載operator的示例

以下示例中定義了乙個class test,過載了 等符號 include includeusing namespace std class test test const int a v a test const test t1 v t1.v 以下過載小於號 比較兩個物件的大小 bool opera...

C 過載operator的示例

include include using namespace std class test test const int a v a test const test t1 v t1.v 以下過載小於號 比較兩個物件的大小 bool operator const test t1 const 比較物件...