C++ 訪問控制(public,protected,private)

1:C++中的繼承方式會影響子類的對外訪問屬性 

public繼承:父類成員在子類中保持原有訪問級別

private繼承:父類成員在子類中變爲private成員

protected繼承:父類中public成員會變成protected,父類中protected成員仍然爲protected, 父類中private成員仍然爲private.

 

父類成員訪問級別

 

public

proteced

private

public

public

proteced

private

proteced

proteced

proteced

private

private

private

private

Private


通過上面可以簡單瞭解C++的繼承關係,如果通過一些特殊的方法也可以訪問子類中的非public方法,如下。


#include <iostream>

using namespace std;

class Father
{
public:
virtual void show()
{
cout << "父類" << endl;
}
};


class Son :public Father
{
private :
virtual void show()
{
cout << "子類" << endl;
}
};


int main()
{
Father *f = new Son;
f->show();
delete f;
return 0;
}
發佈了33 篇原創文章 · 獲贊 7 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章