C++待用資料成員和靜態成員函數

來源:互聯網
上載者:User

在C++物件導向編程過程當中,對象與對象之間的資料不是共用,在設計類的時候,有時候需要一些對象之間共用的資料,除了把所要共用的資料設定為全域資料或者函數之外,還可以利用C++的靜態機制。

1、待用資料成員

class 類名   {   ……   static 類型說明符 成員名;   ……   };

 待用資料成員是所有對象共用的,其所佔的記憶體空間不會因為某個對象的產生而分配,也不會因為對象的銷毀而消失。跟類中其他的非待用資料成員一樣,被定義為private時,不能被外界訪問。但是可以被類內任意存取權限的函數訪問。

關於待用資料成員的初始化:非靜態成員可以在建構函式當中初始化,但是static不能在建構函式當中初始化,它的初始化,只能存在於全域地區,並且要指明是什麼類的靜態成員,可以用範圍符號“::”來指明。

類名::待用資料成員

就這麼簡單。

當聲明為public時候,可以被直接存取,修改而不通過靜態成員函數。

2、靜態成員函數

class 類名   {   …   static 類型 函數名(形參)   { 函數體 }   …   };

靜態成員函數當中不能訪問任何許可權的非待用資料成員,換句話說它只能訪問static。在類外部調用靜態成員函數的時候,不是簡單的

對象.靜態成員函數

這是普通成員函數的做法,

類名::靜態成員函數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.