问答题
18分
打开考生文件夹proj1下的工程proj1,程序中位于每个 // ERROR **********found********** 下的语句行有错误,请加以更正,...
打开考生文件夹proj1下的工程proj1,程序中位于每个 // ERROR **********found********** 下的语句行有错误,请加以更正,不得修改程序的其他部分。更正后程序的输出应该是:
A
True
注意:只能修改每个// ERROR **********found**********下的那一行,不
要改动程序中的其他内容。
A
True
注意:只能修改每个// ERROR **********found**********下的那一行,不
要改动程序中的其他内容。
参考解析: 参考答案:
1、Choice(char c) {answer=c;}改为Choice(char c) :answer(c){}
2、if (answer = x) 改为if (answer == x)
3、Choice c = new Choice('A');改为 Choice* c = new Choice('A');
考点分析:
主要考察类中const成员变量的初始化,容易出错的=与==运算符,以及指针的使用。
答案解析:
1、C++约定:初始化const对象或引用类型的对象,但不能对他们赋值。在开始执行构造函数的函数体之前,必须完成初始化。初始化const或引用类型数据成员的唯一机会是在构造函数初始化列表中。
2、判断相等使用==,非=
3、new操作符返回的是一个指针,因此使用指针变量来接收。