首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正其中的错误,使程序正常运行,并且输出以下结果: (4,5) 7,8 (4,8) 注意:错误的语句在//********error******
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正其中的错误,使程序正常运行,并且输出以下结果: (4,5) 7,8 (4,8) 注意:错误的语句在//********error******
admin
2015-05-30
43
问题
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正其中的错误,使程序正常运行,并且输出以下结果:
(4,5)
7,8
(4,8)
注意:错误的语句在//********error********的下面,修改该语句即可。
1 #include
2 clas s CObj 0
3 {
4 publ ic:
5 CObj0(int i,int j)
6 {
7 x=i ;
8 y=j;
9 }
10 //********error********
11 virtual void move(int a; int b)
12 i
13 x+=a;
14 y+=b ;
15 }
16 void print()
17 {
18 cout<<"("<
19 }
20 public:
21 int x,y;
22 };
23 class cobj1:public cobj 0
24 {
25 public:
26 //********error********
27 cobj1(int i,int j,int k): (i,j)
28 {
29 m=k;
30 n=1;
31 }
32 void print()
33 {
34 cout<
35 }
36 void func()
37 {
38 move(3,5);
39 }
40 void display()
41 {
42 //********error********
43 print();
44 }
45 private:
46 int m,n;
47 };
48 void main()
49 (
50 CObj0 obj(4,5);
51 obj.print();
52 CObj1 obj1(1,3,7,8);
53 obj1.func();
54 obj1.print();
55 obj1.display();
56 }
选项
答案
(1)virtual void move(int a,int b) (2)CObj1(inti,int j,int k,int 1):CObj0(i,j) (3)CObj0::print();
解析
程序中定义了CObj0和CObjl两个类,CObjl公有派生于CObj0,CObj0有两个public成员变量x和y,CObjl有2个private成员变量m和n,CObj0的print函数打印x和y的值,CObjl的print函数打印m和n的值,display函数调用基类的print函数打印CObj1的x和y的值。
[解题思路]
(1)编译程序可知第1标识下有错误,此处是声明虚函数,虚函数的声明方式为:virtual<类型说明符><函数名>(<参数表>),参数表中各参数之间应该用“,”隔开,因此第1个标识下应改为“virtual void move(int a,int b)”。
(2)在主函数里“CObjl objl(1,3,7,8);”,可知构造函数CObj1()有四个参数,完成变量m、n、x和y的初始化,k和1赋值给m和n,i和j赋值给x和y,x和y的初始化可通过基类构造函数来完成对x和Y的初始化,第2个标识下应改为CObj1(int i,intj,int k,int 1):CObj0(i,j)。
(3)由程序运行结果可知标识3下调用的是基类的print()函数,而“print();”是调用的派生类的print()函数,因此此时只能通过类名来直接调用print()函数,即第3个标识下应改为“CObj0::print();”。
转载请注明原文地址:https://kaotiyun.com/show/6JNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
所有的函数模板定义都是以关键字【】开始的。
如果要在类的对象上使用运算符,除了运算符=和【】以外,其它的必须都要被重载。
【】是一种特殊的成员函数,户主要用来为对象分配内存空间,对类的数据成员进行初始化并执行对象的其他内部管理操作。
定义重载函数时,应在参数个数或参数类型上【】。
对于只在表的首、尾两端进行插入操作的线性表,宜采用的存储结构为【】。
定义重载函数时,应在参数个数或参数类型上【】。
有以下定义,则此数组的元素中不正确的一个赋值结果是______。staticinta[10]={1,2,3,4,5};
用树形结构来表示实体之间联系的模型称为
以下各选项组中,均是C++语言关键字的组是
将E-R图转换到关系模式时,实体与联系都可以表示成
随机试题
所谓需要的满足是指绝对的满足,一般说来,低级需要只要有充分满足后,较高的需要才有可能出现,人的动机才有可能受新的需要支配。
Ifacatcomestooclosetoitsnest,themockingbirdinitiatesasetofactionstoprotectitsoffspring.
一患者左脚外伤后感染化脓,而后出现左腿麻木、发凉和水肿入院治疗。入院第三天突然出现呼吸困难,咳嗽、咯血以及口唇发绀等症状,在抢救过程中死亡,该患者可能死于下列哪一项疾病
男,32岁。咳喘气急8年,查体:两肺呼气性哮鸣音为主,伴两肺少量湿啰音,x线胸片及喉镜检查未见异常,其最可能的诊断是
异位妊娠多发生在异位妊娠最常见的原因是
直接影响建设工程项目质量的环境因素,一般包括()。
下列属于泄露客户信息的行为是()。
在过去的10年中,登山设备有了几项改进,这些改进使该运动对于经验丰富的登山者来说更加安全和惬意了。然而虽然有了这些改进,但是过去10年中登山事故发生率仍旧翻了一番。如果以上的陈述完全正确,下列哪一项如果正确,最好地调和了它们之间明显的分歧?
A、AlisonfellinlovewithJim.B、JimfellinlovewithAlison.C、Jimwastedalostoftime.D、Jimwastedalotofenergy.B本题属于
A、Itdeterminesthestandardachildcanreach.B、Itisthehappiestperiodduringone’slife.C、Itisthemostimportanttimet
最新回复
(
0
)