C++Note 成员属性私有化

1.将所有成员属性设置为私有  可以自己控制读写权限

2.对于写权限  可以检测数据的有效性

复制代码
 1 #include <iostream>
 2 using namespace std;
 3 
 4 //成员属性设置为私有
 5 //1.可以自己控制读写权限
 6 //2.对于写可以检测数据的有效性  (例:年龄的限制)
 7 class Person
 8 {
 9 public:
10     void setName(string name)//设置姓名
11     {
12         m_Name = name;
13     }
14     string getName()    //获取姓名
15     {
16         return m_Name;
17     }
18     int getAge()//读取年龄
19     {
20         return m_Age;
21     }
22     void setAge(int age)
23     {
24         if (age > 0 && age < 150)
25         {
26             m_Age = age;
27         }
28         else
29         {
30             m_Age = 0;
31             cout << "年龄有误!" << endl;
32             return;
33         }
34     }
35     void setFriend(string friendp)
36     {
37         m_Friend = friendp;
38     }
39 private:
40     //姓名   可读可写
41     string m_Name;
42     //年龄   可读可写
43     int m_Age;
44     //朋友   只写
45     string m_Friend;
46 };
47 
48 int main() 
49 {
50     Person p1;
51     p1.setName("name1");//写入姓名
52     cout << "姓名:" << p1.getName() << endl;//读取姓名
53     //cout << p1.getAge() << endl;//读取年龄
54     p1.setFriend("friend1");//写入朋友  
55     p1.setAge(100);
56     cout << "年龄:" << p1.getAge() << endl;
57     system("pause");
58     return 0;
59 }
复制代码

 

posted on   廿陆  阅读(8)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示