C/C++中派生類訪問屬性詳解及其作用介紹
更新時間:2021年09月06日 16:30:52 作者:我是小白呀
這篇文章主要介紹了C/C++中派生類訪問屬性詳解及其作用介紹,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
保護繼承
由 protected 聲明的成員稱為 “受保護的成員”, 或簡稱 “保護成員”.
從用戶的角度來看, 保護成員等價于私有成員. 保護成員可以被派生類的成員函數引用.

派生類成員的訪問屬性
4 種訪問屬性:
- 公用的: 類內和類外都可以訪問
- 受保護的: 類內可以訪問, 類外不能訪問, 下一層的派生類可以訪問
- 私有的: 類內可以訪問, 類外不能訪問
- 不可訪問的: 類內和類外都不能訪問
| 繼承方式 | 基類中的成員 | 訪問屬性 |
|---|---|---|
| 公用繼承 (public) | 公用成員和保護成員 | 在派生類中保持原有訪問屬性 |
| 公用繼承 (public) | 私有成員 | 仍為基類私有, 派生類不可訪問 |
| 私有繼承 (private) | 公用成員和保護成員 | 在派生類中成了私有成員 |
| 私有繼承 (private) | 私有成員 | 仍為基類私有, 派生類不可訪問 |
| 受保護的繼承 (protected) | 公用成員和保護成員 | 在派生類中成了保護成員 |
| 受保護的繼承 (protected) | 私有成員 | 仍為基類私有, 派生類不可訪問 |

總結
- 如果在多級派生時都采用公用繼承方式, 那么直到最后一級派生類都能訪問基類的公用成員和保護成員
- 如果采用私有繼承的方式, 經過若干次派生之后, 基類的所有的成員已經變成不可訪問的了
- 如果采用菜戶繼承方式, 在派生類外無法訪問派生類中的任何成員. 而且經過多次派生后, 人們很難清楚的記住哪些成員可以訪問, 哪些成員不能訪問, 很容易出錯
注: 實際開發(fā)中, 我們通常使用的是公共繼承.
到此這篇關于C/C++中派生類訪問屬性詳解及其作用介紹的文章就介紹到這了,更多相關C++派生類訪問屬性內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:

