将成员变量声明为private——effective c++学习笔记

将成员变量声明为privateDeclare data members private.

不采用public成员变量的理由:

<!--[if !supportLists]-->1、 <!--[endif]-->语法的一致性。所有对成员的访问通过函数来进行。

<!--[if !supportLists]-->2、 <!--[endif]-->使用函数可以让你对变量的处理有更精确的控制。

<!--[if !supportLists]-->3、 <!--[endif]-->封装:如果使用函数访问,万一成员变量发送更改,对客户来说没有影响。封装他们可以确保class的约束条件总会获得维护,因为只有成员函数可以影响他们,也保留了日后变更的权力。

同时,protected 变量使用于上面的12。对于封装性,public变量变化影响的是使用此变量的所有的代码,而protected变量影响的是所有使用此变量的derived class代码。所以,不要使用protected 变量。在这一点上我做的不好,我使用了大量的protected 变量。

注意:

<!--[if !supportLists]-->1、 <!--[endif]-->切忌将成员变量声明为private。则可赋予客户访问数据的一致性,可细微划分访问控制,允诺约束条件获得保证,并通过class作者以足够的弹性。

<!--[if !supportLists]-->2、 <!--[endif]-->protected并不比public更具有封装性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值