C++繼承類成員訪問權(quán)限修飾符詳解
1. 前言
C++提供了三個修飾符來限定類成員的被訪問權(quán)限,分別是public ,protected, private. 通過限定訪問權(quán)限,可以達(dá)到程序編寫者想要解決的安全問題和權(quán)限問題。這種權(quán)限的設(shè)置對于安全是非常必要的。
2. 不同修飾下的類成員被訪問權(quán)限
public:被public修飾的類成員可以在任何地方被訪問到。protected:被protected修飾的類成員可以在類內(nèi)部,子類內(nèi)部和友元函數(shù)訪問到。但不能通過類對象訪問。private:被private修飾的類成員可以在類內(nèi)部和友元函數(shù)訪問到,但不能在子類和通過類對象訪問。
可以看出:
protected和private的區(qū)別是:private修飾的不能被繼承到子類種訪問。
protected和public的區(qū)別是:public修飾的可以直接通過類對象訪問。
3. 繼承時的屬性變化
他們之間經(jīng)過繼承后的結(jié)合關(guān)系如下:
| public | protectded | private | |
|---|---|---|---|
| public | public | protected | private |
| protected | protected | protected | private |
| private | private | private | private |
4. protected的作用
加入基類中的某個函數(shù),我們不想將其暴漏,所以不能設(shè)計為public,但又想在子類中能夠訪問到,這時就可以使用protected修飾,子類繼承時可以訪問到。
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
C++實(shí)現(xiàn)寵物商店信息管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)寵物商店信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03
C語言 完整游戲項(xiàng)目坦克大戰(zhàn)詳細(xì)代碼
《坦克大戰(zhàn)》以二戰(zhàn)坦克為題材,既保留了射擊類游戲的操作性,也改進(jìn)了射擊類游戲太過于復(fù)雜難玩的高門檻特點(diǎn),集休閑與競技于一身。經(jīng)典再度襲來,流暢的畫面,瘋狂的戰(zhàn)斗,讓玩家再次進(jìn)入瘋狂坦克的世界。玩家的目標(biāo)是控制坦克躲避危險,消滅掉所有的敵人即可進(jìn)入下一關(guān)2021-11-11
C語言數(shù)據(jù)結(jié)構(gòu)通關(guān)時間復(fù)雜度和空間復(fù)雜度
對于一個算法,其時間復(fù)雜度和空間復(fù)雜度往往是相互影響的,當(dāng)追求一個較好的時間復(fù)雜度時,可能會使空間復(fù)雜度的性能變差,即可能導(dǎo)致占用較多的存儲空間,這篇文章主要給大家介紹了關(guān)于C語言時間復(fù)雜度、空間復(fù)雜度的相關(guān)資料,需要的朋友可以參考下2022-04-04
C++ Thread實(shí)現(xiàn)簡單的socket多線程通信
本文主要介紹了C++ Thread實(shí)現(xiàn)簡單的socket多線程通信,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
C++ 中 <iterator> <functional>&nbs
這篇文章主要介紹了C++ 中 <iterator> <functional> <numeric> 庫好用的函數(shù),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-11-11
C++?OpenCV實(shí)現(xiàn)白平衡之完美反射算法
完美反射算法是白平衡各種算法中較常見的一種,比灰度世界算法更優(yōu)。本文將利用C++和OpenCV實(shí)現(xiàn)白平衡中的完美反射算法,需要的可以參考一下2022-05-05

