选择题   下面程序的运行结果是______。
    #include<iostream.h>
    class base{
    protected:
        int a:
    public:
        base(){cout<<'0';}
    };
    class base1:virtual base{
    public:
        base1(){cout<<'1';}
    };
    class base2:virtual basc{
    public:
        base2(){cout<<'2';
    };
    class derived: public base1,public base2{
    public:
    derived(){cout<<'3';}
    };
    void main()
    {
        derived obj;
        cout<<endl;
    }
 
【正确答案】 A
【答案解析】本题考查的是含有虚基类的继承中构造函数的调用顺序,应该先调用基类的构造函数,接着是按照派生类继承列表的顺序依次调用虚基类的构造函数,最后调用派生类自己的构造函数。