0
点赞
收藏
分享

微信扫一扫

4.1.3成员属性设置为私有

宁静的猫 2022-02-12 阅读 23

优点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;
}

举报

相关推荐

0 条评论