04 2014 档案

摘要:今天专门看了一下虚继承的东西,以前都没怎么用过,具体如下:父类:class CParent{....};继承类的声明比较特别:class CChild : virtual public CParent{....}请问,这个"virtual"是什么作用及含义?---------------------------------------------------------------表示虚拟继承,和普通继承是C++的两种继承方式。例如B1、B2 继承A 而C多重继承B1、B2如果普通继承则C包含两份A的拷贝,分别来自于B1、B2而虚拟继承则只包含一份A的拷贝--------- 阅读全文
posted @ 2014-04-02 14:11 jevinss 阅读(229) 评论(0) 推荐(0) 编辑
摘要:1.简介虚函数是C++中用于实现多态(polymorphism)的机制。核心理念就是通过基类访问派生类定义的函数。假设我们有下面的类层次:class A{public:virtual void foo() { cout foo();// 在这里,a虽然是指向A的指针,但是被调用的函数(foo)却是B的!这个例子是虚函数的一个典型应用,通过这个例子,也许你就对虚函数有了一些概念。它虚就虚在所谓“推迟联编”或者“动态联编”上,一个类函数的调用并不是在编译时刻被确定的,而是在运行时刻被确定的。由于编写代码的时候并不能确定被调用的是基类的函数还是哪个派生类的函数,所以被成为“虚”函数。虚函数只能借助于 阅读全文
posted @ 2014-04-02 13:54 jevinss 阅读(148) 评论(0) 推荐(0) 编辑