摘要: classes和templates都支持接口(interface)和多态(polymorphism)。 对classes而言接口是显式的(explicit),以函数签名为中心。多态则是通过virtual函数发生于运行期。 对template参数而言,接口是隐式的(implicit),奠基于有效表达式 阅读全文
posted @ 2015-03-21 22:01 智者无惧 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 多重继承比单一继承复杂。它可能导致新的歧义性,以及对virtual继承的需要。 virtual继承会增加大小、速度、初始化(及赋值)复杂度等等成本。如果virtual base classes不带任何数据,将是最具实用价值的情况。 多重继承的确有正当用途。其中一个情节涉及“public继承某个Int 阅读全文
posted @ 2015-03-21 21:51 智者无惧 阅读(106) 评论(0) 推荐(0) 编辑
摘要: Private继承意味is-implemented-in-terms of(根据某物实现出)。它通常比复合(composition)的级别低。但是当derived class需要访问protected base class的成员,或需要重新定义继承而来的virtual函数时,这么设计是合理的。 和复 阅读全文
posted @ 2015-03-21 21:43 智者无惧 阅读(180) 评论(0) 推荐(0) 编辑