類的靜態成員

1、靜態數據成員 安全

1.靜態數據成員屬於類,普通數據成員屬於某一實例化對象; 函數

2.靜態數據成員與靜態變量同樣,是在編譯時建立並初始化,它在該類的任何對象被創建以前就存在; this

3.靜態數據成員不能在類中初始化,必須在類外定義初始化;通常在類聲明以後或main()以前; spa

4.私有靜態數據成員不能被類外部函數訪問,也不能用對象進行訪問。 指針

靜態數據成員的使用方法和注意事項以下: 對象

一、靜態數據成員在定義或說明時前面加關鍵字static。

二、靜態成員初始化與通常數據成員初始化不一樣。靜態數據成員初始化的格式以下:

    <數據類型><類名>::<靜態數據成員名>=<值> io

三、靜態數據成員是靜態存儲的,它是靜態生存期,必須對它進行初始化。

四、引用靜態數據成員時,採用以下格式:

   <類名>::<靜態成員名>
編譯

2、靜態成員函數 變量

     

      定義格式: 數據類型

            static 返回類型 靜態成員函數名(實參表);

      公有靜態數據成員的訪問格式:

            1.  類名::靜態成員函數名(實參表)

            2. 對象.靜態成員函數名(實參表)

            3. 對象指針->靜態成員函數名(實參表)

       說明:

             1. 靜態成員函數能夠定義成內嵌的,也能夠在類外定義(在類外定義時,不要用static前綴);

             2. 通常狀況下,靜態成員函數主要用來返回全局變量或同一個類中的靜態數據成員(當它與靜態數據成員一塊兒使用時,達到了對同

                 一個類中對象之間共享數據進行維護的目的);

             3. 編譯系統將靜態成員函數限定爲內部鏈接,即,與現行文件相鏈接的其餘文件中的同名函數不會與該函數發生衝突,維護了該函 數使用的安全性,這是使用靜態成員函數的另外一個緣由;

             4. 在通常的成員函數中,都隱含有一個this指針,用來指向對象自身,而在靜態成員函數中是沒有this指針的,由於它不與特定的對象想聯繫,調用時使用以下格式較好:     類名::靜態成員函數名(); 

             5. 私有靜態成員函數不能被類外部函數和對象訪問。

大摩2013在線筆試:

在VS2012中只有B正確,

在CDE中,objOut的成員只有m_Out,沒法經過objOut訪問內部類;

相關文章
相關標籤/搜索