您的位置:首页 > 编程语言 > C语言/C++

Effective C++ 学习笔记(21)

2011-08-07 00:01 316 查看
使公有继承体现“是一个”的含义

  C++面向对象编程中一条重要的规则是:公有继承意味着 "是一个"。

  当写下类 D("Derived" )从类B("Base")公有继承时,你实际上是在告诉编译器(以及读这段代码的人):类型D 的每一个对象也是类型B 的一个对象,但反之不成立;你是在说:B 表示一个比D 更广泛的概念,D 表示一个比B 更特定概念;你是在声明:任何可以使用类型B 的对象的地方,类型D 的对象也可以使用,因为每个类型D 的对象是一个类型B 的对象。相反,如果需要一个类型D 的对象,类型B 的对象就不行:每个D "是一个" B, 但反之不成立。

  

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: