问题 单项选择题

有如下程序:
#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.printl

B.print2

C.printl print2

D.程序编译时出错。

答案

参考答案:B

解析: 本题定义TestClass型的常对象a,然后调用对象a中的成员函数print()。因为在C++中,如果一个对象被声明为常对象,则不能调用镇对象中的非const型的成员函数。所以,这里调用的是对象中的const型成员函数“void print()const”,输出为print2。

单项选择题
单项选择题