1. const常量型成員變量
const常量型成員變量是在聲明時直接初始化或通過構(gòu)造函數(shù)參數(shù)初始化表完成初始化的。這意味著一旦初始化,該成員變量的值就不能再被修改。在C 中,const關(guān)鍵字用于聲明常量。對于類的成員變量來說,如
const常量型成員變量是在聲明時直接初始化或通過構(gòu)造函數(shù)參數(shù)初始化表完成初始化的。這意味著一旦初始化,該成員變量的值就不能再被修改。在C 中,const關(guān)鍵字用于聲明常量。對于類的成員變量來說,如果希望其為常量,可以在聲明時加上const關(guān)鍵字。
例如:
```cpp
class MyClass {
public:
const int myConst 10; // 聲明時直接初始化
MyClass(int x) : myConst(x) {} // 通過構(gòu)造函數(shù)參數(shù)初始化表完成初始化
};
```
2. 引用型成員變量
引用型成員變量也可以在聲明時直接初始化或通過構(gòu)造函數(shù)參數(shù)初始化表完成初始化。引用類型是對已存在對象的別名。使用引用型成員變量可以方便地共享和操作某個對象。
例如:
```cpp
class MyClass {
public:
int myRef someVariable; // 聲明時直接初始化
MyClass(int x) : myRef(x) {} // 通過構(gòu)造函數(shù)參數(shù)初始化表完成初始化
};
```
3. static靜態(tài)成員變量
static靜態(tài)成員變量是在類體外進行初始化的。靜態(tài)成員變量屬于整個類,而不是特定的對象。它們可以被所有的類對象共享,并且在類的任何實例中只有一個副本。
例如:
```cpp
class MyClass {
public:
static int myStaticVariable; // 在類體外進行初始化
};
int MyClass::myStaticVariable 10; // 初始化格式如下
```
4. static const int 整型靜態(tài)常量成員變量
整型靜態(tài)常量成員變量是在定義時直接初始化或在類體外進行初始化的。它們是靜態(tài)的、不可修改的整型常量。
例如:
```cpp
class MyClass {
public:
static const int myStaticConstant 10; // 定義時直接初始化
};
const int MyClass::myStaticConstant; // 在類體外進行初始化,初始化格式如下
```
5. 非整型靜態(tài)常量成員變量
對于非整型的靜態(tài)常量成員變量,也可以在類體外進行初始化。與整型靜態(tài)常量成員變量不同的是,非整型的靜態(tài)常量成員變量無法在定義時直接初始化。
例如:
```cpp
class MyClass {
public:
static const float myFloatConstant; // 聲明時不進行初始化
};
const float MyClass::myFloatConstant 3.14f; // 在類體外進行初始化,初始化格式如下
```
以上是C 類的特殊成員變量初始化的匯總。理解并熟練掌握這些特殊成員變量的初始化方式,能夠幫助開發(fā)人員更好地使用和管理類的成員變量。