C 中的友元機制

2021-08-19 23:26:34 字數 517 閱讀 5011

c++中的友元機制(friend),可以不通過呼叫成員函式便能直接訪問類的私有資料。友元可以是函式(友元函式),也可以是類(友元類)。

一、友元函式

1.宣告:在類體內,在函式型別前要加關鍵字friend;

2.定義:在類體外,格式與普通函式一樣;

3.特點:(1)友元函式為非成員函式,呼叫上與普通函式一樣;

(2)可直接訪問該類中私有成員。

二、友元類

當宣告乙個類為另乙個類的友元時,友元類中的所有成員函式都是另乙個類的友元函式。

通過下面的**例子,就會更明白了。

#includeusing namespace std;

class x

void display()

{cout << "x=" << x << ";" << "y:" << y 執行結果為:

注意:友元機制的作用主要是為了提高程式的執行效率和方便程式設計。但同時友元破壞了類的封裝性,所以使用時慎重。

C 中的 友元函式 友元類

1.友元函式的簡單介紹 1.1為什麼要使用友元函式 在實現類之間資料共享時,減少系統開銷,提高效率。如果類a中的函式要訪問類b中的成員 例如 智慧型指標類的實現 那麼類a中該函式要是類b的友元函式。具體來說 為了 使其他類的成員函式直接訪問該類的私有變數。即 允許外面的類或函式去訪問類的私有變數和保...

C 中的友元函式和友元

在c 中類具有封裝的隱蔽性,由於語言特性,只有成員函式才能訪問私有成員,非成員函式只能訪問類中的公有成員,可是有時候我們需要非成員函式呼叫私有成員,這個時候要是將私有成員定義為公有的又會破壞c 的封裝,為了解決上述問題,我們提出了友元的概念 友元分為友元函式和友元類,友元函式就是非成員函式可是當我們...

C 類的友元機制說明

下面給出c 類的友元機制說明 對類private protected成員訪問 需要注意的是,友元機制盡量不用或者少用,雖然它會提供某種程度的效率,但會帶來資料安全性的問題。友元是c 提供的一種破壞資料封裝和資料隱藏的機制。通過將乙個模組宣告為另乙個模組的友元,乙個模組能夠引用到另乙個模組中本是被隱藏...