优点1:将所有成员属性设置为私有,可以自己控制读写权限
优点2:对于写权限,我们可以检测数据的有效性
#include<iostream>
#include<string>
using namespace std;
//成员属性设置为私有
//1、可以自己控制读写权限
//2、对于写可以检测数据的有效性
//设计人类
class Person
{
public:
//设置姓名
void setName(string name)
{
m_Name = name;
}
//获取姓名
string getName()
{
return m_Name;
}
//获取年龄 可读可写 如果想修改(年龄范围在0-150之间)
int getAge()
{
//m_Age = 0;//初始化为0岁
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(18);
cout << "年龄为:" << p.getAge() << endl;
//p.m_Name = "张三";
p.setLover("李四");
//cout << "情人为:" << p.getLover << endl; //不可访问
system("pause");
return 0;
}