温馨提示×

C++常量成员函数如何定义

c++
小樊
101
2024-11-09 03:14:29
栏目: 编程语言

在C++中,常量成员函数(const member function)是一个不能修改对象状态的成员函数。这意味着在常量成员函数中,你不能调用任何非const成员函数,因为它们可能会修改对象的状态。要定义一个常量成员函数,只需在函数声明和定义前加上const关键字即可。

以下是一个常量成员函数的示例:

#include <iostream> class MyClass { public: // 构造函数 MyClass(int value) : data(value) {} // 常量成员函数:不能修改对象状态 int getData() const { return data; } // 非const成员函数:可以修改对象状态(注意:这不是常量成员函数) void setData(int value) { data = value; } private: int data; }; int main() { MyClass obj(10); // 调用常量成员函数 std::cout << "Data: " << obj.getData() << std::endl; // 尝试调用非const成员函数(编译错误) // obj.setData(20); return 0; } 

在这个例子中,getData()是一个常量成员函数,因为它不能修改对象的状态。而setData()是一个非const成员函数,因为它可以修改对象的状态。

0