public,nbsp;private,nbsp;prote…
public, private, protected這三個關(guān)鍵詞,對類成員訪問和在基類繼承時進(jìn)行的訪問模式限定符。?
在成員訪問模式中:?
public 表示共有;類的數(shù)據(jù)成員和函數(shù)可以被該類對象和派生類訪問。?
private 私有型;自己的類可以訪問,但派生類不能訪問。?
protected 保護(hù)型;自身類和派生類可以訪問相當(dāng)于自身的private型成員,它同private的區(qū)別就是在對待派生類的區(qū)別上,
?
C++中 public,protected, private 訪問標(biāo)號小結(jié)
第一:private, public, protected 訪問標(biāo)號的訪問范圍。
private:只能由1.該類中的函數(shù)、2.其友元函數(shù)訪問。不能被任何其他訪問,該類的對象也不能訪問。
protected:可以被1.該類中的函數(shù)、2.子類的函數(shù)、以及3.其友元函數(shù)訪問。但不能被該類的對象訪問。
public:可以被1.該類中的函數(shù)、2.子類的函數(shù)、3.其友元函數(shù)訪問,也可以由4.該類的對象訪問。
?
注:友元函數(shù)包括3種:設(shè)為友元的普通的非成員函數(shù);設(shè)為友元的其他類的成員函數(shù);設(shè)為友元類中的所有成員函數(shù)。
?
第二:類的繼承后方法屬性變化。
private 屬性不能夠被繼承。
使用private繼承,父類的protected和public屬性在子類中變?yōu)閜rivate;
使用protected繼承,父類的protected和public屬性在子類中變?yōu)閜rotected;
使用public繼承,父類中的protected和public屬性不發(fā)生改變;如下所示:
?????????????????????? public:??????????? protected:?????? private:
public繼承??????? ?????public???????????? protected??????? 不可用
protected繼承????????? protected????????? protected??????? 不可用
private繼承??????????? private??????????? private????????? 不可用
protected繼承和private繼承能降低訪問權(quán)限。
C++中public,protected,private訪問小結(jié)
第一:private,public,protected方法的訪問范圍.
private: 只能由該類中的方法訪問,不能被該類的對象訪問.
protected: 可以被該類中的方法和其友元函數(shù)訪問,但不能被該類的對象訪問
public: 可以被該類中的方法和其友元函數(shù)訪問,也可以由該類的對象訪問
?
第二:類的繼承后方法屬性變化:
使用private繼承,父類的所有方法在子類中變?yōu)閜rivate;
使用protected繼承,父類的protected和public方法在子類中變?yōu)閜rotected,private方法不變;
使用public繼承,父類中的方法屬性不發(fā)生改變;
總結(jié)
以上是生活随笔為你收集整理的public,nbsp;private,nbsp;prote…的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Avatar Scaler
- 下一篇: win7 关闭计算机休眠,win7系统彻