c++基礎

1.extern關鍵字:函數

  extern的意思就是引用,extern後面能夠是變量名或者函數名,表示引用一個變量或者函數,在連接的時候須要從外部符號表中查找這個變量的定義。this

2.類的靜態成員變量:spa

  [1]類的靜態成員變量是屬於類自己,而非某個實例。指針

  [2]必須在類外初始化,意思就是說不能建立一個對象,用這個對象去初始化那個靜態變量。對象

  [3]能夠經過類名訪問靜態成員變量,例如初始化(int A::value = 0;)。繼承

3.類的靜態成員函數:內存

  [1]靜態成員函數是和該類相關,可是和類的實例無關。class

  [2]靜態成員函數能夠訪問靜態成員變量和靜態成員函數,可是不能訪問非靜態成員函數和非靜態成員變量。由於非靜態成員是屬於某個實例的,沒有實例便沒有初始化內存,因此訪問是非法的。變量

  [3]能夠經過類名調用靜態成員函數。這個是頗有用的,不然必須建立一個對象來調用類裏面的函數。權限

  [4]調用非靜態成員函數時,會傳遞一個this指針(表示調用者對象自己),可是調用靜態成員函數時,不存在this指針。

4.const關鍵字:

  [1]類的成員函數後面加const,表示這個函數不能修改這個類的成員變量。其實就是給這個成員函數的this添加了const屬性。

  [2]若是一個對象建立的時候是const,則這個對象只能調用類的const成員函數(例如建立對象時:const ca a;)。

  [3]非成員函數後面是不能加const的,也不能加volatile。

5.類的成員訪問權限:

  [1]private:private表示成員只屬於本類。能夠在類的內部訪問或者外部函數實現中訪問,不能經過對象訪問。任何繼承,在派生類中都不能夠訪問private成員。

  [2]protect:能夠在類的內部訪問或者外部函數實現中訪問,不能經過對象訪問。

  [3]public:能夠在類的內部訪問或者外部函數實現中訪問,能夠經過對象訪問。

6.類的繼承以後的成員訪問權限:

  [1]public繼承:至關於把基類中的public拷貝到了派生類的public中,基類中的protect拷貝到了派生類的protect中。

  [2]protect繼承:至關於把基類中的public和protect拷貝到了派生類的protect中。

  [3]private繼承:至關於把基類中的public和protect拷貝到了派生類的private中。

相關文章
相關標籤/搜索