码迷,mamicode.com
首页 > 编程语言 > 详细

Effective C++ 条款32 确定你的public继承塑模出is-a关系

时间:2015-09-09 13:02:39      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:

1. public继承意味着"is-a"(是一个)关系,是接口的完全继承(不一定是接口实现的完全继承).例如B继承自A,如果采用public继承,那么意味着B是A的一种,因此A可以进行的操作B同样也可以进行(尽管实现可能不同).

2. public继承的is-a含义(基类可以进行的操作派生类同样可以进行)与现实生活中的is-a含义可能有些许不同.例如,在生活中,正方形无疑是矩形的一种,因此可以认为是is-a关系;然而如果用public继承的is-a含义来解释,正方形可能就不可以public继承自矩形,因为对于一个矩形,我们可以独立地改变高或宽,然而对于正方形,这种操作无法实现.因此对于继承的使用,要为直觉"添加新的洞察力".

Effective C++ 条款32 确定你的public继承塑模出is-a关系

标签:

原文地址:http://www.cnblogs.com/reasno/p/4794174.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!