繼承方式和訪問控制

2021-08-13 04:45:05 字數 956 閱讀 5176

#include "stdafx.h"

#include using namespace std;

//類內部的private protected public 影響訪問許可權

//繼承中 private protected public,

//影響父類中的成員在子類中的訪問許可權,不影響子類現有的成員訪問方式

//99% 只使用public繼承方式

#if 0

public protected private

pub pub pro pri

pro pro pro pri

pri inaccess inaccess inaccess

#endif

//public 提供介面用的

//protected 隱藏資料,傳承資料

//private 隱藏資料

//繼承方式總結

//public 傳承介面,也傳承了資料

//protected 傳承了資料

//private 既沒有傳承介面,也沒有傳承資料

class base

;class derive :public base

protected:

int y;

private:

int z;

};int _tmain(int argc, _tchar* argv)

私有繼承父類之後,父類中的成員函式在子類中就為私有成員函式了(前提是該函式在父類中訪問許可權不是private),不能在類外部用類物件的形式去呼叫,但是成員函式內部是可以呼叫的,也就是說通過私有繼承,子類「隱藏」了父類的介面

class a

};class b : private a

};int main()

c 訪問控制和繼承

表示訪問控制和繼承 派生類可以訪問基類中所有的非私有成員。因此基類成員如果不想被派生類的成員函式訪問,則應在基類中宣告為 private。乙個派生類繼承了所有的基類方法,但下列情況除外 基類的建構函式 析構函式和拷貝建構函式。基類的過載運算子。基類的友元函式 1,繼承自乙個基類時格式為 class ...

繼承 訪問控制

public,private 使用者 可以訪問類的public 成員而不能訪問 private 成員,private 成員只能由類的成員函式和友元訪問。protected 使用者 不能訪問,乙個類中的protected成員。繼承 派生類訪問基類的成員函式和成員變數 public 派生類可以使用基類的...

C 訪問控制 三種繼承方式

不同繼承方式的影響主要體現在 1 派生類成員對基類成員的訪問控制。2 派生類物件對基類成員的訪問控制。三種繼承方式 1 公有繼承 public 基類的public和protected成員的訪問屬性在派生類中保持不變,但基類的private成員不可訪問。派生類中的成員函式可以直接訪問基類中的publi...