在C++中,常量成员函数(const member function)是一种特殊的成员函数,它不能修改类的任何非静态成员变量(除非它们被声明为mutable)。要调用常量成员函数,您需要创建一个常量对象(const object)或者使用指向常量的指针或引用。
以下是一个简单的示例:
#include <iostream>
class MyClass {
public:
int getValue() const {
return value_;
}
private:
int value_ = 42;
};
int main() {
// 创建一个常量对象
const MyClass obj;
// 使用指向常量的指针调用常量成员函数
const MyClass* ptr = &obj;
std::cout << "Value: " << ptr->getValue() << std::endl;
// 使用指向常量的引用调用常量成员函数
const MyClass& ref = obj;
std::cout << "Value: " << ref.getValue() << std::endl;
return 0;
}
在这个示例中,我们定义了一个名为MyClass的类,其中包含一个名为getValue的常量成员函数。这个函数返回类的私有成员变量value_的值。在main函数中,我们创建了三个不同的方式来调用getValue函数:
obj直接调用常量成员函数。ptr调用常量成员函数。ref调用常量成员函数。