使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整,使得程序的输出结果为21。 (1)增加静态私有变量Num,类型为int,请在注释1后添加适当的语句。 (2)增加静态变量

admin2021-07-02  34

问题 使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整,使得程序的输出结果为21。
    (1)增加静态私有变量Num,类型为int,请在注释1后添加适当的语句。
    (2)增加静态变量Num并初始化为10,请在注释2后添加适当的语句。
    (3)完成静态函数get的定义,请在注释3后添加适当的语句。
    (4)完成对象obj对静态函数get的调用,使得输出结果为21,请在注释4后添加适当的语句。
    注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其他的程序代码。
试题程序:
#include
class TC
{
//********1********
  int Own:
  public:
  TC(int i)
  {
  Own=i:
}
//********2********
{
return Num+obj->Own;
}
};
//********3********
int main()
{
TC obj(11);
//********4********
cout<< <return 0;
}

选项

答案(1)应添加“static int Num;”。 (2)应添加“int TC::Num=10;”。 (3)应添加“static int get(TC*obj)”。 (4)将“cout<< <
解析 第1处要求“增加静态私有变量Num,类型为int,”。静态变量的定义格式为static类型变量名称,本题只要在类的private区域定义int型的静态变量Num,即在第1处添加“static int Num;”。第2处要求“增加静态变量Num并初始化为10”。
    第2个标识的位置在类TC的外部,在C++中,使用“::”作用域运算符声明定义的变量属于哪个类。由题干知道,Num属于类TC,根据C++的作用域运算符,在第2处添加语句“int TC::Num=10;”。
    第3处要求“完成静态函数get的定义”。根据第3个标识下的“return Num+obj->Own”语句知道,get函数具有形参obj指针。obj调用Own变量,说明它是TC类型,并且静态函数的定义只要在其前面声明static就可以了,即在第3处添加语句“static int get(TC*o bj)”。
    第4处要求“完成对象obj对静态函数get进行调用,使得输出21到屏幕上”。程序中第4处的“cout<< <
转载请注明原文地址:https://kaotiyun.com/show/elfp777K
0

最新回复(0)