C 物件導向程式設計 友元函式

2021-06-28 04:53:10 字數 495 閱讀 9387

友元函式相當於 類的封裝裡面開的乙個小孔, 可以通過看到類裡面的屬性

友元函式不同於一般函式,一般成員函式訪問類要通過將其資料成員設定成public 這樣就破壞了類的封裝, 破壞了隱藏性  但是有緣函式是不需要的

調用友元函式 直接呼叫, 不需要進行使用. 引用  但這函式體內 需要用「  ." 來進行引用   

具體是先看**:

#includeusing namespace std;

class myclass

//無引數建構函式

myclass(int i)//建構函式

friend myclass squre(myclass); //友員函式

void display()

};class line

; friend double distance(line l1, point p1)

};int main()

C 物件導向 友元函式

1.友元可以是函式 友元函式 也可以是乙個類 友元類 使用時在定義b時的public新增 全域性 friend void func 友元類b的 friend class a a的成員函式 friend void a func 其中函式類又分為全域性函式和成員函式 2.全域性函式做友元時,全域性函式的...

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

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

C 物件導向 友元函式和友元類

2.友元函式的另一種實現 3.友元類 4.為什麼會有友元函式 class person void print person a 對於上面的person類,內部有private protected public的三類訪問許可權的成員。寫乙個外部函式print 來列印這三類成員,則print 可以訪問p...