Effective C++ 条款22:将成员变量声明成private
2021/7/3 17:21:11
本文主要是介绍Effective C++ 条款22:将成员变量声明成private,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
- 程序员在调用对象的方法时不需要犹豫要不要打“()”,因为只有方法才是可见的,所以必须都打。
- 用可见的成员方法对数据进行操作,可以控制访问属性。比如如果我只想读,就可以将函数设置成const,这样用户试图写就会出错。
- 封装性,如果日后需要修改某一变量,或者替换。用户压根就不会知道这件事。
第三点非常重要,我们举个例子
class SpeedDataCollection { public: void addValue(int speed); // 添加新的数据 double averageSoFar() const; // 计算平均速度 };
这里设计了一个收集汽车速度数据的类,其中有一个计算平均速度的方法。现在有两种方法实现,第一个是用一个成员变量保存。每次更新数据就更新这个成员变量的值。第二个是动态计算,只有当调用averageSoFar方法时才会计算。
两个方法其实都OK,如果内存够大就用第一种,不够就用第二种。
但如果我们第一种用的好好的,现在内存不够了要换第二种。此时如果第一种的成员变量是公有的问题就大了。因为我们需要修改所有用到这个成员变量的地方。但如果设置为私有,外界压根就不知道我们做了修改。这就是封装性的体现。
这篇关于Effective C++ 条款22:将成员变量声明成private的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-04el-table 开启定时器下,表格的选中状态会消失是什么原因-icode9专业技术文章分享
- 2024-10-03如何安装和初始化飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03如何安装 App 并连接到飞牛 NAS?-icode9专业技术文章分享
- 2024-10-03如何安装飞牛 TV 并连接到影视服务器?-icode9专业技术文章分享
- 2024-10-03如何在PVE和ESXI上安装飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS安装系统异常情况处理-icode9专业技术文章分享
- 2024-10-03飞牛NAS如何创建存储空间?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS硬盘会自动休眠吗?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何安装飞牛影视和创建媒体库?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何为家人朋友开通影视账号?-icode9专业技术文章分享