在C++中,使用mutable
關鍵字可以修改類的成員變量,即使在const成員函數中也可以修改。下面是一個簡單的示例:
#include <iostream>
class MyClass {
public:
void setNumber(int num) const {
// 使用mutable關鍵字修飾的成員變量可以在const成員函數中修改
mutableNumber = num;
}
void printNumber() const {
// 在const成員函數中訪問和修改mutable成員變量
std::cout << "Mutable number: " << mutableNumber << std::endl;
}
private:
mutable int mutableNumber;
};
int main() {
MyClass obj;
obj.setNumber(10);
obj.printNumber();
return 0;
}
在上面的示例中,mutableNumber
被聲明為mutable
,因此可以在const成員函數setNumber
中進行修改。在printNumber
函數中通過mutableNumber
訪問并打印出修改后的值。