友元函式和運算子過載

2021-08-04 18:34:08 字數 762 閱讀 7111

//友元函式

/*class a

void myprint() };

//友元函式的實現,在友元函式中可以訪問私有的屬性

void modify_i(a *p, int a)

void main()

*//*

//友元類

class a

void myprint()

};class b

private:

a a;

};*/

//運算子過載

/*class point

void myprint()

};//過載+號

point operator+(point &p1, point &p2)

//過載-號

point operator-(point &p1, point &p2)

void main()

*///成員函式,運算子過載

/*class point

//成員函式,運算子過載

point operator+(point &p2)

void myprint()

};void main()

*///當屬性私有時,通過友元函式完成運算子過載

class point

void myprint()

};point operator+(point &p1, point &p2)

void main()

運算子過載和友元函式

1.運算子過載 c 允許將運算子過載擴充套件到使用者定義的型別,例如 允許使用 將兩個物件相加,編譯器將根據運算元的數目和型別決定使用哪種加法定義,過載運算子可以使 看起來更加自然。例 計算時間,乙個運算子過載的例項 class time time int hours,int minutes voi...

運算子過載,友元函式

運算子過載 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...

友元和運算子過載

友元分為友元函式和友元類兩種 1.友元函式。乙個類的友元函式可以訪問該類的私有成員 2.友元類。若a是b的友元類,則a的成員函式可以訪問b的私有成員 運算子過載 就是對已有的運算子 c 中預定義的運算子 賦予多重的含義,使同一運算子作用於不同型別的資料時導致不同型別的行為 目的 擴充套件c 中提供的...