首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整,使得程序输出21到屏幕。完成以下功能: (1)增加静态私有变量m_Number,类型为int,请在注释//********1**
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整,使得程序输出21到屏幕。完成以下功能: (1)增加静态私有变量m_Number,类型为int,请在注释//********1**
admin
2019-06-05
44
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整,使得程序输出21到屏幕。完成以下功能:
(1)增加静态私有变量m_Number,类型为int,请在注释//********1********后添加适当的语句。
(2)增加静态变量m_Number并初始化为10,请在注释//********2********后添加适当的语句。
(3)完成静态函数get的定义,请在注释//********3********后添加适当的语句。
(4)完成对象obj对静态函数get的调用,使得输出21到屏幕上,请在注释//********4********后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
1 #include<iostream.h>
2 class TestClass
3 {
4 //********1********
5
6 int m_Other;
7 public:
8 TestClass(int i)
9 {
10 m_Other=i;
11 }
12 //********3********
13
14 {
15 return m_Number+obj->m_Other;
16 }
17 };
18 //********2********
19
20 int main()
21 {
22 TestClass obj(11);
23 //********4********
24 cout<<<<end1;
25 return 0;
26 }
选项
答案
(1)添加语句:static int m Number; (2)添加语句:int TestClass::m_Number=10; (3)添加语句:static int get(TestClass*obj) (4)将“cout<<<<end1;”补充完整为:cout<<obj.get(&obj)<<end1;
解析
本题中程序的功能是利用get函数计算对象成员数值的和。在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main主函数开始入手,可以看出程序通过调用类TestClass和get()成员函数实现各种输出操作。
(1)题目1要求“增加静态私有变量m_Number,类型为int,”。静态变量的定义格式为:static类型变量名称,本题只要在类的private区域定义int型的静态变量m_Number,即第1个标识下添加“static int m_Number;”。
(2)题目2要求“增加静态变量m_Number并初始化为10”。第2个标识的位置在类TestClass的外部,在C++中,使用“::”作用域运算符声明定义的变量属于哪个类。由题干知道,m_Number属于类TestClass,根据C++的作用域运算符,在第2个标识下添加“int TestClass::m_Number=10:”。
(3)题目3要求“完成静态函数get的定义”。根据第三个标识下的“return m_Number+obj->m_Other;”语句知道,get函数具有形参obj指针。obj调用m_Other变量,说明它是TestClass类型,并且静态函数的定义只要在其前面声明static就可以了,即第3个标识下添加“static int get(TestClass*obj)”。
(4)题目4要求“完成对象obj对静态函数.鳓的调用,使得输出21到屏幕上”。程序中第4个标识下的“cout<<end1;”语句缺少输出值,题目中要求对象对静态函数get的调用,对象对成员函数的调用格式为:对象名.成员函数,即“cout<<obj.get(&@,bj)<<end1;”。
转载请注明原文地址:https://kaotiyun.com/show/g18p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在每个C++程序中必须有且仅有一个()。A)函数B)主函数C)预处理指令D)语句
有如下类声明:classTestClass{intn;public:TestClass(inti=0):n(i){}voidsetValue(intn0);};
在下面程序的横线处填上适当的语句,使程序执行后的输出结果为ABCD。#include<iostream>usingnamespacestd;classA{public:A(){cout<<’A’;}
执行下列语句后,变量n的值是______。intn=0;for(inti=1;i<=3;i++)for(intj=1;j<<=i;j++)n++;
下列关于析构函数的描述中,错误的是()。A)析构函数可以重载B)析构函数由系统自动调用C)每个对象的析构函数只被调用一次D)每个类都有析构函数
下列关于函数模板的描述中,正确的是()。A)函数模板是一个实例函数B)使用函数模板定义的函数没有返回类型C)函数模板的类型参数与函数的参数相同D)通过使用不同的类型参数,可以从函数模板得到不同的实例函数
若要对Data类中重载的加法运算符成员函数进行声明,下列选项中正确的是()。A)Data+(DatA);B)Dataoperator+{Data};C)Data+operator{Data};D)operator+(Data,D
已知类Myclass的定义如下classMyClass{public:voidfunction1(MyClass&C){cout<<c.data;)staticvoidfunction2(MyClass&C)
己知函数f的原型是“voidf(int*x,int&y);”,变量v1、v2的定义是“intv1,v2;”,下列调用语句中,正确的是()。A)f(v1,v2);B)f(v1,&v2);C)f(&v1,v2);D)f(
要利用C++流实现输入输出的各种格式控制,必须在程序中包含的头文件是()。A)fstreamB)istrearaC)ostreamD)iomanip
随机试题
有关胆囊癌下列哪一项不对
早产儿的呼吸特点是
下述牙齿萌出的特点中,错误的是
A.国家药典委员会B.中国药品生物制品检定所C.口岸药品检验所D.省级药品检验所E.县级药品检验所负责全国性药品质量监督检验的部门是()
桥梁静载试验主要测点的检验系数要求()。
背景资料某项目部承建一项大型工业安装工程施工。其中某单位工程由四个主要分部工程和一个一般分部工程组成。项目部在进行工程质量检验评定时有以下情况:在进行分项工程质量检验评定时,由专职质量检查员负责进行评定,核定等级由监理工程师负责进行:在进行分部工程质量检
当建筑物基础下的持力层比较软弱,不能满足上部荷载对地基的要求时,常采用()法来处理软弱地基。
配送主计划是针对客户的()进行的配送资源的安排。
(2012年第3题)在资本主义社会里,资本家雇佣工人进行劳动并支付相应的工资。资本主义工资的本质是
以下叙述中错误的是()。
最新回复
(
0
)