在C++中,常量(const)是一種特殊的變量,其值在程序運行過程中不能被修改。在類中,常量可以用來定義不可更改的屬性或者方法。這里有兩種主要的應用方式:
const
的成員變量是只讀的,它們必須在構造函數的初始化列表中進行初始化,并且之后不能再被修改。這種方式可以確保類的某些屬性在對象創建后不會發生變化。class MyClass {
public:
// 構造函數
MyClass(int value) : myConstValue(value) {}
// const成員函數,返回const成員變量的值
int getConstValue() const {
return myConstValue;
}
private:
const int myConstValue; // const成員變量
};
const
關鍵字,表示這個函數是只讀的,不會修改類的任何成員變量。這樣的函數可以被用于獲取類的屬性值,而不用擔心它們被意外修改。class MyClass {
public:
// 構造函數
MyClass(int value) : myValue(value) {}
// const成員函數,返回成員變量的值
int getValue() const {
return myValue;
}
// 非const成員函數,可以修改成員變量的值
void setValue(int value) {
myValue = value;
}
private:
int myValue;
};
在這個例子中,getValue()
函數被聲明為const
,所以它不能修改myValue
的值。而setValue()
函數沒有被聲明為const
,因此可以修改myValue
的值。