《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 比較物件...