对于类定义 class A{ public:         virtual void func1( ) {}         void func2( ) {} }; class B: public A{ publi

admin2010-12-16  28

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

选项 A、A: :func2( ) 和B: :func1( ) 都是虚函数
B、A: :func2( ) 和B: :func1( ) 都不是虚函数
C、B: :func1( ) 是虚函数,而A: :func2( ) 不是虚函数
D、B: :func1( ) 不是虚函数,而A: :func2( ) 是虚函数

答案C

解析 基类中说明的虚函数,在派生类中自然就是虚函数,所以类B中func1( ) 是虚函数;而类A中的func2没有被关键字virtual修饰,所以不是虚函数。
转载请注明原文地址:https://jikaoti.com/ti/XHL0FFFM
0

最新回复(0)