封装的益处

封装确保用户代码不会破坏对象状态,允许类的内部实现细节改变而不影响用户代码。private数据成员的使用让类的作者可以自由修改数据,只要不改变类接口,用户代码无需更新。同时,private访问权限保护数据免受意外破坏,简化错误定位和修复。
摘要由CSDN通过智能技术生成

封装有两个重要的优点:

  • 确保用户代码不会无意间破坏封装对象的状态

  • 被封装的类的具体实现细节可以随时改变,且无须调整用户级别的密码

   一旦把数据成员定义成private的,类的作者就可以比较自由地修改数据了。当实现部分改变时,我们只需要检查类的代码本身以确认这次改变有什么影响;换句话说,只要类的接口不变,用户代码就无须改变。如果数据是public的,则所有使用了原来数据成员的代码都可能失效,这时我们必须定位并重写所有依赖于老版本实现的代码,然后才能到重新使用该程序。

    把数据成员的访问权限设成private还有另外一个好处,这么做能防止由于用户的原因造成数据被破坏。如果我们发现有程序缺陷破坏了对象的状态,则可以在有限的范围内定位缺陷:因为只有实现部分的代码可能产生这样的错误。因此,将差错限制在有限范围内将能极大地降低维护代码及修正程序错误的难度。

来自《C++ Primer 5th》242页 

 

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值