单选题
有如下程序:
#include<iostream>
using namespace std;
class TestClass
{private:
int x,y;
public:
TestClass(int i,int j)
{x=i;
y=j;}
void print()
{cout<<"print1"<<endl;}
void print() const
(cout<< "print2"<<endl;});
int main()
{const TestClass a(1,2):
a.print();
return 0;}
该程序运行后的输出结果是______。
A.print1
B.print2
C.print1 print2
D.程序编译时出错
A
B
C
D
【正确答案】
B
【答案解析】
[解析] 本题由主函数main入手,定义TestClass型的常对象a,然后调用对象a中的成员函数print()。因为在C++中,如果一个对象被声明为常对象,则不能调用该对象中的非const型的成员函数。所以,这里调用的是对象中的const型成员函数“void print() const”,输出为print2。
提交答案
关闭