相對於j**a而言,友元是c++中特有的一種元素,很多教材上對其介紹的相對較少,因此初學的時候往往不能很快掌握,本文總結了友元的用法和一些注意的地方,供大家參考借鑑。希望能對初學c++的朋友起到一點幫助作用。
操作步驟:
1)在myfriend類中,將father類定義成友元
程式設計客棧2)寫乙個son類繼承自father類
3)在father類和son類的建構函式中分別建立myfriend物件,並定義其內部的三個變數
4)在myfriend類的建構函式中建立father物件,並定義其內部的三個變數
結果及注意事項:
1)father類中建立的myfriend物件程式設計客棧允許直接訪問myfriend類中所有變數
2)son類中建立的myfrien程式設計客棧d物件只允許直接訪問myfriend類中public變數
3)由第二點可知,友元關係無法繼承
4)myfrien程式設計客棧d類中建立的father物件只允許直接訪問father類中的public變數
5)由第四點可知,友元關係是單向的,即a為b友元,b並不是a的友元,需要另外單獨定義
myfriend.h頁面**如下:
#include "father.h"zhvbz
class myfriend
int var1;
protected:
int var2;
private:
int var3;
};father.h頁面**如下:
#include "myfriend.h"
class father;
int var1;
protected:
int var2;
private:
int var3;
}son.h頁面**如下:
#include "myfriend.h"
class son : father;
}感興趣的讀者可以除錯執行一下本文例項,相信會有新的收穫。
本文標題: c++友元(friend)用法例項簡介
本文位址:
友元函式 friend
類的外部,也就是通過例項來訪問私有 private 或保護 protected 成員,這是被禁止的。但從實用性來說,的確有時很需要在外部訪問,c 增加了一種稱之為 友元 friend 函式的申明,將 特權 賦給一些函式 可以是全域性函式,也可以是其它類的成員函式 使之能夠訪問該類的私有和保護成員。友...
友元friend總結
1.關鍵字friend只出現在類定義的內部 這點與const不同 2.友元是授予友元關係的那個類的成員 3.定義類b為類a的友元,b可以訪問a的私有成員 cpp view plain copy print?例1 要注意友元的使用順序,宣告b 定義a 定義b class b 只宣告而未定義的類稱為不完...
友元函式 friend
一 乙個類的成員函式有三個互不相干作用 1.可以通過類的成員方法,訪問它的私有資料。2.該函式的作用域在類中。3.在外部調動該函式必須通過成員訪問符訪問,也就是必須經由乙個物件去啟用 有乙個this指標 二 友元函式 1.友元函式作用域不屬於類的作用域,不是類的成員,也就不是類的方法,不受公有 私有...