運算子過載與友員函式

2021-06-22 07:02:53 字數 501 閱讀 2151

1.友員函式使用在,你需要乙個函式具有訪問類的私有成員,但是不想它成為這個類的成員函式,那麼可以宣告這個函式為類的友員函式 。

2.運算子過載為類的成員函式時,使用時,左邊必須是這個類的物件,如果左邊不是類的物件 ,那麼是無法呼叫這個成員函式的,如果想左邊不是乙個物件就 呼叫 這個函式,那麼

可以宣告這個函式為類的友員函式

#include

using namespace std;

class complex

//object+object

complex operator + (const complex &c1);

//object+i,but i+object is false

complex operator + (const int i);

//i+object

friend complex operator + (const int i,complex &c1);

void display()

成員運算子過載函式與友元運算子過載函式的比較

1 對雙目運算子而言,成員運算子過載函式引數表中含有乙個引數,而友元運算子過載函式引數表中含有兩個引數 對單目運算子而言,成員運算子過載函式引數表中沒有引數,而友元運算子過載函式引數表中含有兩個引數。2 雙目運算子一般可以被過載為友元運算子過載函式或成員運算子過載函式,但有一種情況,必須使用友元函式...

運算子過載,友元函式

運算子過載 include using namespace std class cint cint const cint timp public cint operator const cint timp const cint add const cint timp const cint add c...

運算子過載與友元

參考 c primer plus 第六版 先給段 include include using namespace std class time void addmin int m void addhr int h void reset int h 0,int m 0 time sum const t...