為什麼需要友元與友元的缺點

2021-06-22 21:33:05 字數 395 閱讀 9436

通常對於普通函式來說,要訪問類的保護成員是不可能的,如果想這麼做那麼必須把類的成員都生命成為public(共用的),然而這做帶來的問題遍是任何外部函式都可以毫無約束的訪問它操作它,c++利用friend修飾符,可以讓一些你設定的函式能夠對這些保護資料進行操作,避免把類成員全部設定成public,最大限度的保護資料成員的安全。

友元能夠使得普通函式直接訪問類的保護資料,避免了類成員函式的頻繁呼叫,可以節約處理器開銷,提高程式的效率,但所矛盾的是,即使是最大限度大保護,同樣也破壞了類的封裝特性,這即是友元的缺點,在現在cpu速度越來越快的今天我們並不推薦使用它,但它作為c++乙個必要的知識點,乙個完整的組成部分,我們還是需要討論一下的。

在類裡宣告乙個普通數學,在前面加上friend修飾,那麼這個函式就成了該類的友元,可以訪問該類的一切成員。

友元函式與友元類 友元與巢狀

友元提供了不同類的成員函式之間 類的成員函式與一般函式之間進行資料共享的機制。通過友元,乙個不同函式或另乙個類中的成員函式可以訪問類中的私有成員和保護成員。c 中的友元為封裝隱藏這堵不透明的牆開了乙個小孔,外界可以通過這個小孔窺視內部的秘密。友元的正確使用能提高程式的執行效率,但同時也破壞了類的封裝...

友元函式與友元類

物件導向程式設計的乙個重要思想就是實現資料隱藏 類的封裝特性 即 非成員函式不能訪問private 或者 protected 變數。有些時候我們需要不經成員函式而訪問private 或者 protected資料,那就需要用到 友元函式 或者友元類。使用friend關鍵字在類內任意位置宣告函式為友元函...

友元函式與友元類

友元函式 需要友元的原因 1 普通函式需要直接訪問乙個類的保護或私有資料成員 2 需要友元的另乙個原因是為了方便過載操作符的使用 友元函式不是成員函式,它是類的朋友,因而能夠訪問類的全部成員 在類的內部,只能宣告它的函式原型,加上friend 關鍵字 優缺點 優點 能夠提高效率,表達簡單,清晰 缺點...