目錄
1 全域性函式做友元
2 類做友元
3 成員函式做友元
在程式中有些私有屬性,也想讓類外特殊的一些函式或者類進行訪問,這就需要用到友元技術,友元的目的就是讓乙個函式或者類訪問另外乙個類中的私有成員。
友元的關鍵字為friend
友元的三種實現方式:
全域性函式做友元
類做友元
成員函式做友元
class building
public:
string m_sittingroom;
private:
string m_bedroom;
};//全域性函式
void goodgay(building *building)
class building
;//類外寫成員函式
building::building()
class goodgay
;goodgay::goodgay()
void goodgay::visit()
void test01()
int main()
class building;
class goodgay
;class building
;building::building()
goodgay::goodgay()
void goodgay::visit()
void goodgay::visit1()
building的順序很重要,需要先宣告building,再定義goodgay C 類和物件 友元
全域性函式做友元可以訪問另乙個類中的私有成員,寫法就是把全域性函式複製貼上放到類中,前面再加乙個關鍵字friend include include using namespace std class building 房屋類 public string m livingroom 客廳 private...
C 物件導向 友元函式和友元類
2.友元函式的另一種實現 3.友元類 4.為什麼會有友元函式 class person void print person a 對於上面的person類,內部有private protected public的三類訪問許可權的成員。寫乙個外部函式print 來列印這三類成員,則print 可以訪問p...
c 類和物件特性 友元
今天介紹下友元,首先介紹為什麼需要友元,友元解決什麼樣的問題。我們知道物件導向特性中封裝是將內部細節進行封裝,包括內部的私有變數,如果外部想訪問私有變數,就需要提供公有的函式進行操作。解決的問題 在外部函式或者是類中,想訪問某個類a的內部私有成員變數或者函式,但是類a又不想提供額外的public的方...