類的繼承過程分為公有繼承,保護繼承和私有繼承,無論哪一種繼承,基類的私有成員在派生類成員中都是不可見的,可是基類的私有成員是否被派生類繼承了呢?通過以下實驗即可知道。
**如下:
#include using namespace std;
class base
private:
virtual void f()
int a; };
class derive : public base;
void main() {
derive d;
int** pvtab = (int**)&d;
fun pfun = (fun)pvtab[0][0];
cout<
監視視窗如下圖:
執行結果如下:
由以上可知,基類的私有成員被派生類繼承了,而類的物件空間沒有響應的常規函式成員的分布。同時根據類的物件的記憶體空間的分布,我們可以在類外訪問類的私有成員。
c 父類的私有成員能否繼承
1.子類可以間接訪問父類私有成員 父類的私有成員函式和私有成員變數一樣,只有該類內部的其他成員函式可以呼叫,對外是封蔽的。子類繼承了父類的共有函式,且父類的公有函式呼叫了其內部的私有函式,此時子類呼叫父類的公有函式便能訪問父類的私有成員函式了。include using namespace std ...
python 類私有成員
在python中定義私有變數只需要在變數名或函式名前加上 兩個下劃線,那麼這個函式或變數就會為私有的了。created on 2012 7 24 author administrator class test def test 1 self print test 1 is ok.def test 2...
Python類的私有成員
usr bin env python coding utf8 python中類的成員函式 成員變數預設都是公開的 public 在python中定義私有成員只需要在變數名或函式名前加上 兩個下劃線 那麼這個函式或變數就變成私有的了。在內部,python使用一種name mangling技術,將 me...