C 之訪問標號

2021-04-22 11:10:54 字數 1363 閱讀 1008

c++的訪問標號有三種,跟c#一樣.用法也差不多.很容易理解.

比較特色的是:預設的class的成員都是private的,而c#裡面預設是public的.跟c++裡面的struct一樣.

一般來說,都是把介面放在public那邊,資料或者是一些類特有的隱蔽操作,放在private這邊,--懂黑箱操作的,應該都能理解.

比較特別的是,c++裡面有個friend -- 友元這個東東.一旦定下了某個friend,慘了,無論是黑箱也好,私隱也好,全都無所遁形了,友元這邊,想看就看,想用就用.我覺得不能叫friend,朋友哪有那麼親密那麼霸道的,叫marry(結婚)函式才差不多,嘻嘻.

以下文章**blog飛翔的心,連線: http://hi.baidu.com/%ce%e1%d0%c4%c6%bd%be%b2/blog/item/18d7eadbccd3ad62d0164e34.html

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繼承能降低訪問許可權。

網路流之標號法

求最大流流量 include include include include define maxn 1000 頂點個數最大值 define inf 1000000 無窮大 define min a,b a b a b struct arctype arctype edge maxn maxn in...

protected訪問標號的乙個生僻

c primer 15.2.2節中有這樣一段話 派生類只能通過派生類物件訪問其基類的protected成員,派生類對其基類型別物件的protected成員沒有特殊許可權。例子 item base是bulk item的基類,bulk item定義了乙個成員方法,接受乙個bulk item物件的引用,和...

protected訪問標號的乙個生僻

c primer 15.2.2節中有這樣一段話 派生類只能通過派生類物件訪問其基類的protected成員,派生類對其基類型別物件的protected成員沒有特殊許可權。例子 item base是bulk item的基類,bulk item定義了乙個成員方法,接受乙個bulk item物件的引用,和...