全域性函式——》友元全域性函式
成員函式——》友元成員函式
1、友元關係不可傳遞;
2、友元關係的單向性;
3、友元宣告的形式及數量不受限制。(友元宣告在類的**都可以)
4、友元只是封裝的補充,是迫不得已的使用方法,可以通過設計的巧妙性,避免使用友元。它破壞了資料的封裝。
#include using namespace std;
class watch;
/** * 定義time類
* 資料成員:m_ihour, m_iminute,m_isecond
* 成員函式:建構函式
* 友元類:watch
*/class time
public:
int m_ihour;
int m_iminute;
int m_isecond;
};/**
* 定義watch類
* 資料成員:m_ttime
* 成員函式:建構函式
* display用於顯示時間
*/class watch
void display()
public:
time m_ttime;
};int main()
友元 友元函式 友元類和友元成員函式 C
有些情況下,允許特定的非成員函式訪問乙個類的私有成員,同時仍阻止一般的訪問,這是很方便做到的。例如被過載的操作符,如輸入或輸出操作符,經常需要訪問類的私有資料成員。友元 frend 機制允許乙個類將對其非公有成員的訪問權授予指定的函式或者類,友元的宣告以friend開始,它只能出現在類定義的內部,友...
友元 友元函式 友元類和友元成員函式 C
有些情況下,允許特定的非成員函式訪問乙個類的私有成員,同時仍阻止一般的訪問,這是很方便做到的。例如被過載的操作符,如輸入或輸出操作符,經常需要訪問類的私有資料成員。友元 frend 機制允許乙個類將對其非公有成員的訪問權授予指定的函式或者類,友元的宣告以friend開始,它只能出現在類定義的內部,友...
C 友元 友元函式 友元類和友元成員函式
有些情況下,允許特定的非成員函式訪問乙個類的私有成員,同時仍阻止一般的訪問,這是很方便做到的。例如被過載的操作符,如輸入或輸出操作符,經常需要訪問類的私有資料成員。友元 frend 機制允許乙個類將對其非公有成員的訪問權授予指定的函式或者類,友元的宣告以friend開始,它只能出現在類定義的內部,友...