首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: TestClass1 TestClass2 注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: TestClass1 TestClass2 注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句
admin
2016-10-28
27
问题
使用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全国计算机二级
相关试题推荐
当使用带参数的操作子时,程序中必须包含头文件______。
下列有关指针的用法中错误的是()。
在C++语言中函数返回值的类型是由()决定的;
当要使用ostrstream流类定义一个流对象并联系一个字符串时,应在文件开始处使用#include命令,使之包含()文件。
下面的说明中,正确的函数定义是()。
C++程序是从【】函数开始执行的。
下列关于函数模板实参不能省略的情况说明不正确的是
有如下函数模板定义:template<typenameT1,typenameT2,typenameT3>T2plusT1t1,T3t3){returnt1+t3;}则以下调用中正确是
随机试题
异位妊娠的B超特点是什么?
在MODS的预防中,维持有效循环和呼吸功能的基本措施是
A.正中神经损伤B.尺神经损伤C.桡神经损伤D.臂丛神经损伤E.腓总神经损伤“爪形手”可见于
胆系造影的禁忌证不包括
流感病毒的哪个型别既存在于人又存在于动物中
根据针灸治疗原则,寒证应采用的治疗原则是
胸腰椎压缩性骨折,压缩程度在1/3以内采取()
()是目前同际上最重要和最常用的市场基准利率。
MindThoseMannersontheSubwaySo,thereyouare,justsittingthereinthesubwaycar,enjoyingthatbookyoujustbought.(46
TheF.B.I.TheF.B.I,istheFederalBureauofInvestigation./ItisthemaininvestigatingagencyoftheDepartmentof
最新回复
(
0
)