首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正其中的错误,使程序正确运行。并且使程序输出的结果为: OK 注意:错误的语句在//******error******的下面,修改该语句即可。 #include<iostre
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正其中的错误,使程序正确运行。并且使程序输出的结果为: OK 注意:错误的语句在//******error******的下面,修改该语句即可。 #include<iostre
admin
2016-10-28
69
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正其中的错误,使程序正确运行。并且使程序输出的结果为:
OK
注意:错误的语句在//******error******的下面,修改该语句即可。
#include<iostream.h>
class CBase
{
public:
CBase()
{
a=b=0;
}
private:
int a,b;
};
class CDerivel:public CBase
{
public:
CDerivel()
(
)
//******error******
virtual void func();
};
class CDerive2:public CDerivel
{
public:
CDerive2()
{
a=0;
b=0;
}
void func()
{
//******error******
cout<<"OK"<endl;
}
private:
int a;
int b;
};
void main()
{
CDerive2 obj;
//******error******
CDerive1 *p=(CDerive1*)
obj;
p->func();
}
选项
答案
(1)virtual void func()=0; (2)cout<<"OK"<<endl: (3)CDerivel *p=(CDerivel*)aobj;
解析
(1)由审题分析可知,CDerivel类中的func()函数是纯虚函数,纯虚函数的定义格式为:virtual<函数类型><函数名>(<参数表>)=0,因此第1个标识下应为“virtual void func()=0;”。func()函数没有参数表。
(2)编译程序后发现第2个标识下有错误,cout流中的数据是用流插入运算符“<<”顺序加入的,因此“<”不正确,应改成“cout<<"OK"<<endl;”。
(3)函数的调用方式有2种:非多态调用和多态调用,非多态调用是指不使用指针或引用的直接调用,多态调用是指通过对象的指针或引用的调用,在主函数中定义了CDerivel *p,p是指向基类CDerivel的指针,因此是多态调用方式,即通过对象的指针来调用,应该把派生类对象的地址赋给p,而不是对象名,因此第3个标识下应改为“CDerivel *p=(CDerivel*)&obj;”。
转载请注明原文地址:https://jikaoti.com/ti/7YE0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
表达式10>5&&6%3的值是
以下类定义中可能会引起错误的语句是classA{public:~A(){}//1inti;//2private:
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是
C++语言中规定函数的返回值的类型是由()。
在不同文件的函数中,对非静态全局变量的引用要加的关键字是()。
下列关于函数模板实参不能省略的情况说明不正确的是
mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回,请填空。intmystrlen(char*str){inti;for(i=0;______!=’\0’;i++);
对于模板定义关键字class和typename说法不正确的是
有如下函数模板定义:template<typenameT1,typenameT2,typenameT3>T2plusT1t1,T3t3){returnt1+t3;}则以下调用中正确是
下面的哪个选项不能作为函数的返回类型?
随机试题
引起奇脉的疾病是
A.亲和层析B.SDS-PAGEC.等电点沉淀法D.离子交换层析用于蛋白质中氨基酸组分分析的是
硬脂酸镁在片剂中作为
根据我国仲裁法和民事诉讼法的规定,涉外仲裁裁决具有下列哪些情形时,人民法院对仲裁裁决不予执行?()
《建设工程质量管理条例》规定,建设单位应当自建没工程竣工验收合格之日起( )日内,将建设工程竣工报告建设行政主管部门备案。
吉尼斯世界纪录和趣味有关,也和无聊有关,27个法国人用牙签搭建了微型的埃菲尔铁塔,一个美国人收集了600余双匡威运动鞋,一个古巴人做出了世界上最长的雪茄。吉尼斯就是无聊大观园,没有想不到,也不存在做不到。但太无聊的纪录连吉尼斯也会望而生畏,有人
火箭对于()相当于()对于集装箱
Thefollowingquestionspresentasentence,partofwhichorallofwhichisunderlined.Beneaththesentence,youwillfindfiv
Careeristsarepeoplewhoseself-imageisdeterminedalmostexclusivelybytheirjobs.【B1】______everythingtheydoisdesignedt
Don’tletvacationsorbusinesstravelsideline(使退出)yourexerciseroutine.Physicalactivityisagreatwayto【C1】______stress
最新回复
(
0
)