C 友元函式與友元類

2021-08-17 05:58:25 字數 347 閱讀 3925

友元函式:

友元的作用是提高程式的執行效率,但是由於它可以直接訪問類的私有和保護成員,因此破壞了類的封裝性,應謹慎使用。

注意:(1)其函式體可以在類內定義,也可以在類外定義。

(2)友元函式不是類的成員函式,它不帶有this指標,因此必須將物件名或物件的引用作為友元函式的引數,並在函式體中使用運算子「.」來訪問物件的成員。

(3)可以直接訪問該類中的所有成員(公有,保護,私有)。

(4)乙個類的成員函式也可以作為另乙個類的友元函式。

友元類:

若宣告a類為b類的友元類,則a類的所有的成員函式都可以成為b類的友元函式。

友元關係:不傳遞的,不具有交換性,不繼承。

c 友元函式與友元類

友元函式和友元類的需要 類具有封裝和資訊隱藏的特性。只有類的成員函式才能訪問類的私有成員,程式中的其他函式是無法訪問私有成員的。非成員函式可以訪問類中的公有成員,但是如果將資料成員都定義為公有的,這又破壞了隱藏的特性。另外,應該看到在某些情況下,特別是在對某些成員函式多次呼叫時,由於引數傳遞,型別檢...

c 友元函式與友元類

友元函式和友元類的需要 類具有封裝和資訊隱藏的特性。只有類的成員函式才能訪問類的私有成員,程式中的其他函式是無法訪問私有成員的。非成員函式可以訪問類中的公有成員,但是如果將資料成員都定義為公有的,這又破壞了隱藏的特性。另外,應該看到在某些情況下,特別是在對某些成員函式多次呼叫時,由於引數傳遞,型別檢...

c 友元函式與友元類

1.友元函式和友元類的需要 類具有封裝和資訊隱藏的特性。只有類的成員函式才能訪問類的私有成員,程式中的其他函式是無法訪問私有成員的。非成員函式可以訪問類中的公有成員,但是如果將資料成員都定義為公有的,這又破壞了隱藏的特性。另外,應該看到在某些情況下,特別是在對某些成員函式多次呼叫時,由於引數傳遞,型...