C++之訪問標號

來源:互聯網
上載者:User

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繼承能降低存取權限。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.