虚函数、纯虚函数详解
虚函数:父类中有虚函数,如果子类实例以父类的身份出现,那么调用虚函数的时候就会是子类的实现,而不是父类的实现,如果是普通方法,那么将会调用父类的实现 1.首先:强调一个概念 定义一个函数为虚函数,不代表函数为不被实现的函数。定义他为虚函数是为了允许用基类的指针来调用子类的这个函数。 定义一个函数为纯虚函数,才代表函数没有被实现。定义他是为了实现一个接口,起到一个规范的作用,规范继承这个。类的程序员必须实现这个函数。 2.关于实例化一个类: 有纯虚函数的类是不可能生成类对象的,如果没有纯虚函数则可以。比如: class CA { public: virtual void fun() = 0; // 说明fun函数为纯虚函数 virtual void fun1(); }; class CB { public: virtual void fun(); virtual void fun1(); }; // CA,CB类的实现 ... vo ...