c++建立一个类: (1)该类具有const和非const成员函数。(2)创建这个类的const和非const 对象,并用不同类型的对象调用不同类型的成员函数
作者:野牛程序员:2024-10-25 11:08:28 C++阅读 2528
c++建立一个类: (1)该类具有const和非const成员函数。(2)创建这个类的const和非const 对象,并用不同类型的对象调用不同类型的成员函数
c++建立一个类: (1)该类具有const和非const成员函数。(2)创建这个类的const和非const 对象,并用不同类型的对象调用不同类型的成员函数.
以下是一个 C++ 程序,定义了一个类,其中包含 const 和非 const 成员函数,并展示如何使用 const 和非 const 对象调用这些函数:
#include <iostream>
class MyClass {
private:
int value;
public:
// 构造函数
MyClass(int val) : value(val) {}
// 非 const 成员函数
void setValue(int val) {
value = val;
}
// const 成员函数
int getValue() const {
return value;
}
};
int main() {
// 创建非 const 对象
MyClass obj1(10);
std::cout << "非 const 对象初始值: " << obj1.getValue() << std::endl;
// 调用非 const 成员函数
obj1.setValue(20);
std::cout << "非 const 对象修改后值: " << obj1.getValue() << std::endl;
// 创建 const 对象
const MyClass obj2(30);
std::cout << "const 对象初始值: " << obj2.getValue() << std::endl;
// 不能调用非 const 成员函数
// obj2.setValue(40); // 编译错误,无法调用非 const 函数
// 只调用 const 成员函数
std::cout << "const 对象值: " << obj2.getValue() << std::endl;
return 0;
}程序说明
MyClass 类:
包含一个私有成员
value。构造函数: 初始化
value。setValue: 非
const成员函数,用于修改value。getValue:
const成员函数,用于返回value,确保不会修改对象状态。main 函数:
创建一个非
const对象obj1,调用setValue和getValue方法,修改和获取其值。创建一个
const对象obj2,只能调用getValue方法,无法调用setValue方法,从而展示const对象的限制。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

