问题详情

有如下程序: #included<iostream> usingnamespacestd; classTestClass { private: intx,Y; public: TestClass(inti,intj) { x=i: y=j; } voidprint() { cout<<"printl"<<endl; } voidprint()const { cout<<"print2"<<endl; } }; intmain() { constTestClassa(1,2); print(); return0; } 该程序运行后的输出结果是( )。


A、printl

B、print2

C、printlprint2

D、程序编译时出错

时间:2022-01-09 15:50 关键词:

答案解析

B
B。【解析】本题定义TestClass型常对象a,然后调用对象a中的成员函数print。因为在C++中.如果一个对象被声明为常对象,则不能调用该对象中的非const型成员函数。所以,这里调用的是对象中的const型成员函数voidprintconst,输出为print2。