单选题
有如下程序: #incLude <iostream> using namespace std; c1ass A{ public: A(){cout<"A';} ~A(){cout<<'C';} }; c1ass B:public A{ public: BO{cout<<'G';} ~BO{couK<'T';} }; int main0{ B obj; return 0; } 运行这个程序的输出结果是( )。
【正确答案】
B
【答案解析】解析:派生类B是由基类A公开继承而来,所以在创建类B的obj对象时,首先执行基类A的构造函数A(),输出A,再执行派生类B的构造函数BO,输出G,当程序结束时,首先执行派生类的析构函数~BO,输出T,再执行基类A的析构函数~A(),输出C。