C 學習日記4 模板篇的友元函式和友元類

2021-07-23 09:00:50 字數 531 閱讀 6640

關鍵字:friend

知識點1:友元函式

友元全域性函式:寫法如:friend 函式返回值 函式名(類名 &)->firend void display(worker &p)

a.函式可以呼叫私有資料成員(直接可訪問私有成員)

b.知識點2:友元類

寫法:在類a裡面,寫friend 類名b——即類b是類a的友元,則b例項化的物件可以訪問a例項化物件裡的私有資料成員

友元成員函式:寫法如:friend 函式返回值  父類名::函式名(類名 &)->firend void person::  display(worker &p)

知識點3:友元的注意事項

1.友元關係不可傳遞

2.友元關係的單向性

3.友元宣告的形式及數量不受限制

4.友元只是封裝的補充

c 遠征之模板篇 友元函式 友元類

全域性函式 友元全域性函式 成員函式 友元成員函式 1 友元關係不可傳遞 2 友元關係的單向性 3 友元宣告的形式及數量不受限制。友元宣告在類的 都可以 4 友元只是封裝的補充,是迫不得已的使用方法,可以通過設計的巧妙性,避免使用友元。它破壞了資料的封裝。include using namespac...

C 友元函式和友元類學習

c 中的友元為封裝隱藏這堵不透明的牆開了乙個小孔,外界可以通過這個小孔窺視內部的秘密。友元的正確使用能提高程式的執行效率,但同時也破壞了類的封裝性和資料的隱藏性,導致程式可維護性變差。友元函式需要在類的定義中加以宣告,宣告時只需在友元的名稱前加上關鍵字friend,其格式如下 friend 型別 函...

友元 友元函式 友元類和友元成員函式 C

有些情況下,允許特定的非成員函式訪問乙個類的私有成員,同時仍阻止一般的訪問,這是很方便做到的。例如被過載的操作符,如輸入或輸出操作符,經常需要訪問類的私有資料成員。友元 frend 機制允許乙個類將對其非公有成員的訪問權授予指定的函式或者類,友元的宣告以friend開始,它只能出現在類定義的內部,友...