c 友元總結

2021-08-22 07:09:56 字數 908 閱讀 2014

1、友元函式的作用:讓不是類的成員函式可以訪問該類的私有成員,提高效率。

2、關於友元的幾點總結:

2.1 友元可以是乙個函式,該函式被稱為友元函式;友元也可以是乙個類,該類被稱為友元類。    

2.2 友元函式是定義在類外的普通函式,它不屬於任何類,但需要在類的定義中加以宣告。

2.3 乙個函式可以是多個類的友元函式,只需要在各個類中分別宣告。

2.4 友元不是類的成員,只是乙個申明,寫在類的任意乙個位置都可以。

2.5 友元關係不能被繼承,不具有傳遞性。友元關係是單向的,不具有交換性。

2.6 類似 goto 語句,不建議經常使用。

2.7 宣告乙個 其他類 的成員函式為自己的友元,不建議使用。

class point;//申明乙個類

class pointmanager

;class point

void printpoint()

int getx()

int gety()

//宣告乙個全域性函式為自己的友元,這裡只是申明,寫在類中任意乙個位置都行。

friend double pointdistance(point & p1, point &p2);

//宣告乙個 其他類的成員函式為自己的友元 不建議使用

friend double pointmanager::pointdistance(point & p1, point &p2);

private:

int x;

int y;

};double pointmanager::pointdistance(point & p1, point &p2)

double pointdistance(point & p1, point &p2)

C 友元總結

友元函式是定義在類外的可以訪問類內部的私有和保護成員的函式,友元函式類似打破了封裝,本來外部無法直接訪問的變數,函式,利用友元函式或者友元類 整個類中所有成員都是友元 可以進行訪問。友元函式會在類中被宣告,但是它不是成員函式。友元的定義要使用friend。class book void printi...

C 總結 友元類和友元函式

windows環境多執行緒程式設計原理與應用 中解釋 如果將類的封裝比喻成一堵牆的話,那麼友元機制就像牆上了開了乙個門,那些得 到允許的類或函式允許通過這個門訪問一般的類或者函式無法訪問的私有屬性和方法。友元機制使類的封裝性得到消弱,所以使用時一定要慎重。友元類的說明將外 界的某個類在本類別的定義中...

C 總結 友元類和友元函式

windows環境多執行緒程式設計原理與應用 中解釋 如果將類的封裝比喻成一堵牆的話,那麼友元機制就像牆上了開了乙個門,那些得 到允許的類或函式允許通過這個門訪問一般的類或者函式無法訪問的私有屬性和方 法。友元機制使類的封裝性得到消弱,所以使用時一定要慎重。友元類的說明 將外界的某個類在本類別的定義...