程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++類成員相關應用方法介紹

C++類成員相關應用方法介紹

編輯:C++入門知識

在C++編程語言中,同樣均具有面向對象的特性。比如在C++中有為類提供的類成員等等。我們將會在這裡為大家詳細介紹一下有關C++類成員相關知識,希望能對大家在理解這方面的知識上有所幫助。

  • C++打印地址信息實現方法介紹
  • C++產生隨機數具體實現方法詳解
  • C++鏈表操作實際應用技巧分享
  • C++運行機制簡單介紹
  • C++循環語句基本概念詳解

C++為類中提供C++類成員的初始化列表

類對象的構造順序是這樣的:

1.類裡面的任何成員變量在定義時是不能初始化的。

2.一般的數據成員可以在構造函數中初始化。

3.const數據成員必須在構造函數的初始化列表中初始化。

4.static要在類的定義外面初始化。

5.數組成員是不能在初始化列表裡初始化的。

6.不能給數組指定明顯的初始化。

這6條一起,說明了一個問題:C++裡面是不能定義常量數組的!因為3和5的矛盾。這個事情似乎說不過去啊?沒有辦法,我只好轉而求助於靜態數據成員。
到此,我的問題解決。但是我還想趁機復習一下C++類的初始化:

1.初始化列表:CSomeClass::CSomeClass() : x(0), y(1){}

2.類外初始化:int CSomeClass::myVar=3;

3.const常量定義必須初始化,C++類裡面使用初始化列表;

4.C++類不能定義常量數組。

關於const,復習一下常量指針:

如果const位於星號的左側,則const就是用來修飾指針所指向的變量,即指針指向為常量;如果const位於星號的右側,const就是修飾指針本身,即指針本身是常量。

在C++類中,必須做如下事情:

1.必須對任何const或引用類型成員以及沒有默認構造函數的 類 類型 的任何成員 顯示地使用初始化列表進行初始化

2.類成員在定義時是不能被初始化的。

3.C++類成員初始化順序與成員變量在構造函數中的位置選後順序無關,至於成員變量在類中定義的先後順序有關。

所以下面的例子是錯的:

  1. class x  
  2. {  
  3. int i;   
  4. int j;  
  5. public :  
  6. x( int value):j(value),i(j)  
  7. {  
  8. }  

對與上面的code,因為i先被初始化i相對於j先定義的)而在i初始化時,j並沒有被初始化,故執行出現問題了。

C++類成員的相關概念就為大家介紹到這裡。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved