C 關係過載運算子

2021-10-23 17:32:27 字數 772 閱讀 8284

1、c++中定義相等運算子,它們會比較物件的每乙個資料成員,只有當所有對應的成員都相等時才認為兩個物件相等。**如下:

class

person

bool

operator

==(person& p)

else

}bool

operator

!=(person& p)

else

}public

: string m_name;

int m_age;

};

2、測試函式①

person p1

("牛魔王"

,180);

person p2

("牛魔王"

,180);

if(p1 == p2)

else

測試結果

p1和p2是相等的!

請按任意鍵繼續.

..

3、測試函式②

person p1

("孫悟空"

,180);

person p2

("孫悟空"

,200);

if(p1 != p2)

else

測試結果

p1和p2不相等!

請按任意鍵繼續.

..

C 過載運算子

運算子過載是一種形式的c 多型。在c 中,編譯器有能力把乙個由資料 物件和操作符共同組成的表示式,解釋為對乙個全域性或成員函式的呼叫。該全域性或成員函式被稱為操作符函式,通過重定義操作符函式,可以實現針對自定義型別 結構,類 的運算法則,並使之與內建型別一樣參與各種表示式。過載運算子可使 看起來更加...

C 過載運算子

本文主要講述加號運算子 自增運算子 流提取運算子運 流插入運算子 先給出vector類 class vector 建構函式 vector const vector v 拷貝建構函式 vector operator const vector v 過載 vector operator 過載前置自增運算子...

C 過載運算子

過載的運算子是帶有特殊名稱的函式,函式名是由關鍵字 operator 和其後要過載的運算子符號構成的。與其他函式一樣,過載運算子有乙個返回型別和乙個引數列表。如果我們定義的函式為類的成員函式 box operator const box 如果我們定義的函式為非成員函式,那麼我們需要為每次操作傳遞兩個...