这段代码定义了一个名为Person
的类,该类具有三个成员函数和三个私有成员变量。
- 成员函数
setName
用于设置姓名,它接受一个string
类型的参数name
并将其赋值给成员变量m_Name
。 - 成员函数
getName
用于获取姓名,它返回成员变量m_Name
的值。 - 成员函数
getAge
用于获取年龄,它返回成员变量m_Age
的值。 - 成员函数
setAge
用于设置年龄,它接受一个int
类型的参数age
并将其赋值给成员变量m_Age
。在赋值之前,它会检查年龄是否在有效范围内(0到150岁之间),如果不在范围内,将输出提示信息并返回。 - 成员函数
setLover
用于设置情人,它接受一个string
类型的参数lover
并将其赋值给成员变量m_Lover
。 - 类的私有成员变量包括:
m_Name
:姓名,可读可写。m_Age
:年龄,只读。m_Lover
:情人,只写。
在main
函数中,首先创建了一个Person
类的对象p
。然后通过调用成员函数来设置和获取对象的属性:
- 使用
setName
函数设置姓名为"张三",并使用getName
函数获取并输出姓名。 - 使用
setAge
函数设置年龄为50,然后使用getAge
函数获取并输出年龄。 - 使用
setLover
函数设置情人为"苍井",但由于m_Lover
是私有成员变量且只写,无法直接访问和输出。
最后,通过system("pause")
使程序暂停,以便观察输出结果。
总结:该代码定义了一个具有姓名、年龄和情人属性的Person
类,并提供了相应的设置和获取函数。其中,姓名属性可读可写,年龄属性只读,情人属性只写。通过对象的成员函数对属性进行操作和访问。
#include<iostream>
#include<string>
using namespace std;
class Person {
public:
// 姓名设置可读可写
void setName(string name) {
m_Name = name;
}
string getName() {
return m_Name;
}
// 获取年龄
int getAge() {
return m_Age;
}
// 设置年龄
void setAge(int age) {
if (age < 0 || age > 150) { // 检查年龄是否在有效范围内
cout << "你个老妖精!" << endl;
return;
}
m_Age = age;
}
// 情人设置为只写
void setLover(string lover) {
m_Lover = lover;
}
private:
string m_Name; // 可读可写的姓名属性
int m_Age; // 只读的年龄属性
string m_Lover; // 只写的情人属性
};
int main() {
Person p;
// 姓名设置
p.setName("张三");
cout << "姓名: " << p.getName() << endl;
// 年龄设置
p.setAge(50);
cout << "年龄: " << p.getAge() << endl;
// 情人设置
p.setLover("苍井");
// cout << "情人: " << p.m_Lover << endl; // 只写属性,不可以读取
system("pause");
return 0;
}