首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.clap,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: TestClass1 TestClass2 注意:不要改动main函数,不能增行或删行,也不能
使用VC6打开考生文件夹下的源程序文件modi1.clap,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: TestClass1 TestClass2 注意:不要改动main函数,不能增行或删行,也不能
admin
2018-10-23
73
问题
使用VC6打开考生文件夹下的源程序文件modi1.clap,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:
TestClass1
TestClass2
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//******error******的下面。
1 #include<iostream.h>
2 #include<assert.h>
3 struct TestClass0
4 {
5 //********error********
6 virtual void fun();
7 };
8 class TestClass1:public TestClass 0
9 {
10 void fun()
11 {
12 cout<<’’TestClass1’’<<end1;
13 }
14 };
15 class TestClass2:public TestClass0
16 {
17 void fun()
18 {
19 cout<<’’TestClass2’’<<end1;
20 }
21 };
22 void main()
23 {
24 TestClass0* p;
25 TestClass1 obj1;
26 TestClass2 obj2;
27 //********error********
28 p=*obj1;
29 p->fun();
30 //********error********
31 p=*obj2;
32 p->fun();
33 return;
34 }
选项
答案
(1)virtual void fun()=0; (2)p=&obj1; (3)p=&obj2;
解析
本题程序中的功能为输出字符串TestClass1和TestClass2。从已定源程序的main主函数开始入手,通过定义的类,实现题目中要求的输出结果。
(1)如果在基类中并不使用这个虚函数,其返回值也是没有意义的,它应该被定义为纯虚函数。所以虚函数fun()应该是纯虚函数,也就是声明虚函数的时候初始化为0的函数。即第1个标识下的“virtual void fun()=0;”。
(2)第2个标识下的p为指针变量,将对象obj1赋值给p,实际上是p指向对象obj1的地址,所以“p=*obj1;”修改为“p=&obj1;”
(3)第3个标识下的“p=*obj2;”语句同(2),修改为“p=&obj2;”。
转载请注明原文地址:https://kaotiyun.com/show/O5Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
对于以下带参数的main()函数的第二形参,voidmain(intargc,______),不可能的形式是
__[12]__是一系列相关函数的模型或样板,这些函数的__[13]__形式相同,只是所针对的__[14]__不同。
数据库恢复是将数据库从______状态恢复到某一已知的正确状态。
下列程序输出的结果是()。#include<stdio.h>un1(chara,charb){charc;c=a;a=b;b=c;}fun2(char*a,charb){charc;c=*a;*a=b;b=c;}
下列定义中p指向的地址可更改,但*p不能够更改的是()。
在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classBase{protected:voidfun(){}};classD
有下列程序:#include<iostream>usingnamespacestd;classTestClass1{public:TestClass1(){cout<<"A";}
只能作为成员函数重载的是
下列程序用于将源文件中的字母进行大小写转换,请填写while的请句。#include<iostream.h>#include<fstream.h>#include<iomanip.h>voidmain(){cha
随机试题
患者,男,34岁。半年前反复出现口腔溃疡,有灼痛且不易愈合;近两个月来在头面、颈部、胸背、腋下及腹股沟部起红斑,1周后陆续在红斑基础上出现黄豆至蚕豆大小水疱,部分还可融合成大疱,疱壁薄且松弛,尼氏征阳性,水疱破裂后所形成的糜烂不易愈合,故前来就诊。患者
王某,女,65岁。因早期子宫内膜癌行经腹全子宫切除术。病人自诉留置导尿管会阴部不适,要求早拔除尿管。关于导尿管的护理措施不正确的是
下列在储煤仓、煤塔进行清理作业应遵守的安全规定,说法正确的是()。
以下项目中属于财产清查基本程序的有()。
个人汽车贷款的贷款对象需要符合一定的条件,下面关于个人汽车贷款对象说法错误的是()。
甲公司欠乙公司30万元,一直无力偿付,现丙公司欠甲公司20万元,已经到期,但甲公司一直怠于行使对丙公司的债权,乙公司遂依法提起诉讼。根据合同法律制度的规定,下列表述中,正确的有()。
人民检察院作出的批准或不批准逮捕的决定,属于公安执法的()。
173口是个四位数,小明在这个口中先后填入3个数字,所得到的3个四位数,依次可被9、11、6整除。问:小明先后填入的3个数字的和是多少?
甲、乙两人在一条长100米的直路上来回跑步,甲的速度3米/秒,乙的速度2米/秒。如果他们同时分别从直路的两端出发,当他们跑了10分钟后,共相遇多少次?
北方人不都爱吃面食,但南方人都不爱吃面食。如果已知上述第一个断定真,第二个断定假,则以下哪项据此不能确定真假?Ⅰ.北方人都爱吃面食,有的南方人也爱吃面食。Ⅱ.有的北方人爱吃面食,有的南方人不爱吃面食。Ⅲ.北方人都不爱吃面食,南方人都爱吃面食。
最新回复
(
0
)