单选题 有如下程序: #inc1ude <iostream> using namespace std; c1ass Base{ public: Base(int x==0):valB(x){cout<<va1B,} ~Base(){cout<<valB,) private: int vaIB; }; c1ass Derived:public Base{ public: Derived(int x=0,int y=0):Base(x),vaID(y){cout<<va1D,} ~Derived0 {cout<<valD;} private: int vaID; }; int main(){ Derived obj12(2,3); retum0; } 运行时的输出结果是( )。
【正确答案】 A
【答案解析】解析:在主函数中创建类Derived对象obj12(2,3)时,因为类Derived是从基类Base派生而来,所以首先调用基类的构造函数,输出2,再调用派生类构造函数,输出3。当主函数运算结果时,首先调用派生类的析构函数,输出3,再调用基类的析构函数输出2.所以输出结果为2332。