首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: TestClass1 TestClass2 注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: TestClass1 TestClass2 注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句
admin
2016-10-28
37
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:
TestClass1
TestClass2
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//******error******的下面。
#include<10Stream.h>
#include<assert.h>
struct TestClass0
{
//********error********
virtual void fun();
};
class TestClass1:public
TestClass0
{
void fun()
{
cout<<"TestClass1"<<endl;
}
};
class TestClass2:public
TestClass0
{
void fun()
{
cout<<"TestClass2"<<endl;
}
};
void main()
{
TestClass*p;
TestClass1 obj1;
TestClass2 obj2;
//********error********
p=*obj1;
p->fun();
//********error********
p=*obj2;
p->fun();
return;
}
选项
答案
(1)virtual void fun()=0; (2)P=&obj1; (3)p=&obj2;
解析
(1)如果在基类中并不使用这个虚函数,其返回值也是没有意义的,它应该被定义为纯虚函数。所以虚函数fun()应该是纯虚函数,也就是声明虚函数的时候初始化为0的函数。即第1个标识下的“virtual void fun()=0;”。
(2)第2个标识下的P为指针变量,将对象obj1赋值给p,实际上是p指向对象obj1的地址,所以“p=*obj1;”修改为“p=&0bi1;”。
(3)第3个标识下的“p=*obj2;”语句同(2),修改为“p:&obj2;”。
转载请注明原文地址:https://kaotiyun.com/show/hKNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下的程序:#include<iostream>usingnamespacestd;classAT{friendostream&operator<<(ostream&,AT);}at;os
下列关于析构函数的描述中,错误的是()。
当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为()。
若已知charstr[20];,有语句cin>>str;当输入为:Thisisaprogram所得的结果是str=()。
以下类定义中可能会引起错误的语句是classA{public:~A(){}//1inti;//2private:
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是
流操作子______可跳过输入流中的前导空白字符。
如果一个类中定义了成员对象,则该类的对象和成员对象先被初始化的是______。
下列类的定义中,有()处语法错误。classBase {public:Base(){}Base(inti){data=i;
随机试题
劳动者可以单方解除劳动合同的情形有()
男,18岁。双下肢水肿伴尿少8天,血压150/105mmHg,尿红细胞(+++),尿蛋白(+++),血肌酐2101mol/L,下列疾病中可能性最小的是
患者,男性,40岁,两周前在家捕鼠时,被鼠咬伤,3天前出现高热,全身疼痛、乏力,遂来院就诊,确诊为流行性出血热。对该患者的消毒隔离措施错误的是
A.开郁、润燥、化痰B.滋阴养血,润燥生津C.疏肝解郁,理气化痰D.滋阴养血,破结行瘀E.益气健脾,滋养津液
施工监理服务收费调整系数中,海拔高程2001~3000m的高程调整系数为()
假设S企业2012年12月31日的资产负债表简表如下:(单位:元)要求:计算资产负债表简表中(1)至(5)中应填的金额。负债合计的金额是()元。
下列二次型中是正定二次型的是()
帧中继(FrameRelay)交换是以帧为单位进行交换,它是在______上进行的。
A.accessB.accordinglyC.advocateD.automaticE.contendF.contentG.enhancedH.enriched
CanMixofTeachers,ComputersLeadtoPupilSuccess?[A]WhenvisitorstotheCarpeDiemcharterschoolsee175studentswea
最新回复
(
0
)