问题 单项选择题

对于类定义  class A{  public:    virtual void func1( ){}    void func2( ){}  };  class B:public A{  public:    void func1( ){cout<<"class B func 1"<<endl;}    virtual void func2( ){cout<<"class B func2"<<endl;}  };  下面正确的叙述是( )。

A.A::func2( )和B::func1( )都是虚函数

B.A::func2( )和B::func1( )都不是虚函数

C.B::func1( )是虚函数,而A::func2( )不是虚函数

D.B::func1( )不是虚函数,而A::func2( )是虚函数

答案

参考答案:C

解析:基类中说明的虚函数,在派生类中自然就是虚函数,所以类B中 funcl( )是虚函数;而类A中的func 2没有被关键字virtual修饰,所以不是虚函数。

问答题 简答题
单项选择题