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

admin2020-05-14  36

问题 使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整,并使程序的输出结果为21。
    (1)增加静态私有变量Num,类型为int。请在注释1后添加适当的语句。
    (2)增加静态变量Num并初始化为10。请在注释2后添加适当的语句。
    (3)完成静态函数get的定义。请在注释3后添加适当的语句。
    (4)完成对象obj对静态函数get的调用,使输出结果为21。请存注释4后添加适当的语句。
    注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其他的程序代码。
    试题程序:
    #include(iostream.h)
    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*obj)”。第4处要求“完成对象obj对静态函数get的调用,使得输出结果为21”。程序中第4处的“cout<< <
转载请注明原文地址:https://kaotiyun.com/show/Dc8p777K
0

最新回复(0)