温馨提示×

在C++中如何正确使用mutable关键字

c++
小樊
84
2024-08-18 09:09:35
栏目: 编程语言

在C++中,mutable关键字被用于修饰类的成员变量,表示这些变量可以在const成员函数中被修改。通常情况下,const成员函数是不能修改类的成员变量的,但是如果某个成员变量被声明为mutable,那么在const成员函数中可以通过该变量进行修改。

下面是一个使用mutable关键字的简单示例:

#include <iostream>

class Example {
public:
    int getValue() const {
        // 在const成员函数中修改mutable变量
        m_counter++;
        return m_counter;
    }

private:
    mutable int m_counter = 0;
};

int main() {
    Example ex;
    std::cout << ex.getValue() << std::endl; // 输出1
    std::cout << ex.getValue() << std::endl; // 输出2

    return 0;
}

在上面的示例中,类Example中的m_counter成员变量被声明为mutable,因此在getValue() const函数中可以对其进行修改。通过调用getValue()函数,每次输出的结果都会递增。这样就实现了在const成员函数中修改类的成员变量的功能。

0