class A : virtual public Object
请问上面的virtual有什么用?为什么要加它?什么时候要加它?

解决方案 »

  1.   

    virtual表示虚函数,它又分为普通虚函数和纯虚函数。
    据我理解,所谓纯虚函数,就是必须让子类去实现的函数,在父类只是声明了一下,并无实现!
    普通虚函数就是父类里也有实现,但子类也可以有实现。虚函数的主要目的是实现多态,即用一个父类指针指向不同的子类,用同一个函数却可以得到不同的结果,是为“多态”!
      

  2.   

    to lanyd:
    那些我都知道。可这是类定义。我想知道class A :  public Object{}这样派生出来的类和class A : virtual public Object{}这样派出来的类有什么区别?