C 核心程式設計 4 類和物件 友元

2021-10-20 05:10:26 字數 1653 閱讀 3414

黑馬程式設計師匠心之作|c++教程從0到1入門程式設計

學習筆記

本階段主要針對c++

物件導向程式設計技術做詳細講解,**c++中的核心和精髓

在程式裡,有些私有屬性,也想讓類外特殊的一些函式或者類進行訪問,就需要用到友元的技術。

友元的目的就是讓乙個函式或者類,訪問另乙個類中的私有成員。

友元的關鍵字為friend

友元的三種實現

示例:

#include

using

namespace std;

#include

//建築物類

class

building

public

: string m_sittingroom;

//客廳

private

: string m_bedroom;

//臥室};

//全域性函式

void

goodfriend

(building *building)

void

test01()

intmain()

輸出:

好**的全域性函式 正在訪問:客廳

好**的全域性函式 正在訪問:臥室

示例:

#include

using

namespace std;

#include

//類做友元

class

building

;class

goodfriend

;class

building

;//類外寫成員函式

building::

building()

goodfriend::

goodfriend()

void goodfriend::

visit()

void

test01()

intmain()

輸出:

好**類正在訪問:客廳

好**類正在訪問:臥室

示例:

#include

using

namespace std;

#include

//類做友元

class

building

;class

goodfriend

;class

building

;//類外寫成員函式

building::

building()

goodfriend::

goodfriend()

void goodfriend::

visit()

void goodfriend::

visit2()

void

test01()

intmain()

輸出:

visit函式正在訪問:客廳

visit函式正在訪問:臥室

visit2函式正在訪問:客廳

C 物件導向程式設計(四)友元函式和友元類

友元函式 宣告 friend 返回型別 函式名 形參表 說明 友元函式可以是另乙個類的成員函式,也可以是不屬於任何類的一般的函式。友元是乙個普通的函式,它不是本類的成員函式。private public protected 訪問許可權與友元函式宣告無關。友元也可以是整個類。稱為友元類。格式 clas...

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...