C 中的類訪問控制

2022-04-28 23:51:14 字數 879 閱讀 9327

c++中 public,protected, private 訪問標號小結

第一:private, public, protected 訪問標號的訪問範圍。

private:只能由1.該類中的函式、2.其友元函式訪問。

不能被任何其他訪問,該類的物件也不能訪問。

protected:可以被1.該類中的函式、2.子類的函式、以及3.其友元函式訪問。

但不能被該類的物件訪問。

public:可以被1.該類中的函式、2.子類的函式、3.其友元函式訪問,也可以由4.該類的物件訪問。

注:友元函式包括3種:設為友元的普通的非成員函式;設為友元的其他類的成員函式;設為友元類中的所有成員函式。

第二:類的繼承後方法屬性變化。

private 屬性不能夠被繼承。

使用private繼承

,父類的protected和public屬性在子類中變為private;

使用protected繼

承,父類的protected和public屬性在子類中變為protected;

使用public繼承,父類中的protected和public屬性不發生改變; 

如下所示: 

public

protected

private

public繼承

public

protected

不可用protected繼承

protected

protected

不可用private繼承

private

private

不可用protected繼承和private繼承能降低訪問許可權。

C 類中的訪問控制

參考 the c programming language special 3rd edition 類成員可以是public protected或者private 如果是private,只能被類的成員函式和類的友員訪問 如果是protected,可以被類的成員函式和類的友員,以及該類的派生類的成員函...

C 中類的訪問控制

如下 tstring tstring const tstring string1 其中data為private變數,但在複製建構函式中確訪問了string1的data變數。此方法是可以的。原理見引用這篇文章。關鍵應用 訪問類的private變數。class num num num int data ...

C 中類訪問許可權控制

c 中類訪問許可權控制 第一 private,public,protected 訪問標號的訪問範圍,在沒有繼承的情況下 private 只能由1.該類中的函式 2.其友元函式訪問。不能被任何其他訪問,該類的物件也不能訪問。protected 可以被1.該類中的函式 2.子類的函式 以及3.其友元函式...