问题 单项选择题

下面程序的结果是
#include<iostream.h>
class A
public:
A( ) cout<<"construtA"<<endl;
virtual~A( ) cout<<"destructA"<<endl;;
class B:public A

class C:public A

class D:public B,public C

void main( )
D d;

A.constructA
destructA

B.constructA
constructA
destructA
destructA

C.constructA
constructA
constructA
destructA
destructA
destructA

D.constructA
  onstructA
constructA
constructA
destructA
destructA
destructA
destructA

答案

参考答案:B

解析: 类D继承了类C和类B,所以在构造的时候分别构造类B和类C。

选择题
单项选择题