请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程prog1。其中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为: v1=23:v2=42 注意:只修改每个“//ERROR****

admin2019-06-07  24

问题 请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程prog1。其中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:
v1=23:v2=42
注意:只修改每个“//ERROR****found****”下的那一行,不要改动程序中的其他内容。
#include
usingnamespacestd;
classMyClass
{
intv1;
staticintv2;
public:
MyClass(intV):v1(V){}
intgetValue()const{returnvl;}
staticintgetValue(intdummy)
{
//ERROR**********found**********
returnv1;
}
};
//ERROR**********found**********
intMyClass.V2=42;
intmain()
{
MyClassobj(23);
//ERROR**********found**********
intv1=obj.v1;
intv2=MyClass::getValue(0);
cout<<"v1="<<return0;
}

选项

答案(1)return MyClass::v2; (2)int MyClass::v2 = 42; (3)int v1 = obj.getValue();

解析 (1)主要考查考生对静态成员函数的掌握情况,根据函数定义:static int getValue(int dummy)可知,函数要求返回一个静态整型值。
(2)主要考查考生对静态成员的掌握情况,给静态成员赋值要使用作用域符’::’。
(3)主要考查考生对成员函数的掌握情况,由于v1是类的私有成员,故不能被main函数直接调用。
转载请注明原文地址:https://kaotiyun.com/show/Cm8p777K
0

最新回复(0)