发现生活之美

2017年10月6日

3.10 C++虚基类 虚继承

摘要: 参考:http://www.weixueyuan.net/view/6367.html 总结: 本例即为典型的菱形继承结构,类A中的成员变量及成员函数继承到类D中均会产生两份,这样的命名冲突非常的棘手,通过域解析操作符已经无法分清具体的变量了。为此,C++提供了虚继承这一方式解决命名冲突问题。虚继承 阅读全文

posted @ 2017-10-06 18:57 发现生活之美 阅读(363) 评论(0) 推荐(0) 编辑

3.9 C++多继承

摘要: 参考:http://www.weixueyuan.net/view/6366.html 总结: C++中一个派生类中允许有两个及以上的基类,我们称这种情况为多继承 使用多继承可以描述事物之间的组合关系,但是如此一来也可能会增加命名冲突的可能性,冲突可能很有可能发生在基类与基类之间,基类与派生类之间。 阅读全文

posted @ 2017-10-06 17:48 发现生活之美 阅读(2625) 评论(0) 推荐(0) 编辑

3.8 C++继承机制下的析构函数

摘要: 参考:http://www.weixueyuan.net/view/6365.html 总结: 构造函数的执行顺序是按照继承顺序自顶向下的,从基类到派生类,而析构函数的执行顺序是按照继承顺序自下向上,从派生类到基类。 因为每一个类中最多只能有一个析构函数,因此调用的时候并不会出现二义性,因此析构函数 阅读全文

posted @ 2017-10-06 17:37 发现生活之美 阅读(564) 评论(0) 推荐(0) 编辑

3.7 C++派生类构造函数调用规则

摘要: 参考:http://www.weixueyuan.net/view/6364.html 总结: 派生类构造函数可以自动调用基类的默认构造函数而无需显式调用。 生类构造函数可以自动调用基类的默认构造函数,但是前提是默认构造函数必须存在。 当基类没有默认构造函数时,派生类则无法自动调用基类的默认构造函数 阅读全文

posted @ 2017-10-06 17:26 发现生活之美 阅读(928) 评论(3) 推荐(1) 编辑

3.6 C++继承机制下的构造函数

摘要: 参考:http://www.weixueyuan.net/view/6363.html 总结: 在codingbook类中新增了一个language成员变量,为此必须重新设计新的构造函数。在本例中book类中有一个默认构造函数和一个带参数的构造函数,codingbook类中同样声明了两个构造函数,一 阅读全文

posted @ 2017-10-06 17:04 发现生活之美 阅读(568) 评论(1) 推荐(0) 编辑

3.5 C++间接继承

摘要: 参考:http://www.weixueyuan.net/view/6362.html 总结: 假设类C继承自类B,类B继承自类A。那么类C中的除了能够继承B类的成员函数和成员变量外,同样也能继承B类继承自A类的所有成员。换言之,类C可以继承来自类A的所有成员。因此继承既可以是直接继承,也可以是间接 阅读全文

posted @ 2017-10-06 16:31 发现生活之美 阅读(474) 评论(0) 推荐(0) 编辑

导航