网站首页 语言 会计 电脑 医学 资格证 职场 文艺体育 范文

计算机二级C++练习题:改错题及答案

栏目: 计算机二级 / 发布于: / 人气:1.48W

为了使广大考生在备战计算机等级考试时,更快的掌握相应知识点,下面是小编搜索整理的计算机二级C++练习题:改错题及答案,供参考练习,预祝考生们考出自己理想的成绩!

计算机二级C++练习题:改错题及答案

计算机二级C++练习题:改错题及答案

使用VC6打开考生文件夹下的工程kt8_1,此工程包含一个源程序文件kt8_,但该程序运行有问题,请改正程序中的错误,使程序的'输出结果如下:

f1functionofderive

f2functionofbase

f4functionofbase

源程序文件kt8_清单如下:

#include

classbase

{public:

/**********found**********/

voidf1(){cout<<"f1functionofbase"<<ENDL;}

virtualvoidf2(){cout<<"f2functionofbase"<<ENDL;}

virtualvoidf3(){cout<<"f3functionofbase"<<ENDL;}

voidf4(){cout<<"f4functionofbase"<<="">

/**********found**********/

classderive::publicbase

{voidf1(){cout<<"f1functionofderive"<<ENDL;}

voidf2(intx){cout<<"f2functionofderive"<<ENDL;}

voidf4(){cout<<"f4functionofderive"<<="">

voidmain()

{base*p;

deriveobj2;

/**********found**********/

p=obj2;

p->f1();

p->f2();

p->f4();}

【参考答案】

(1)将voidf1(){cout<<"f1functionofbase"<<ENDL;}

改为:virtualvoidf1(){cout<<"f1functionofbase"<<ENDL;}

(2)将classderive::publicbase

改为:classderive:publicbase

(3)将p=obj2;

改为:p=&obj2;

【试题解析】

(1)主要考查对虚函数的深刻理解,虚函数是动态联编的基础,也是实现多态性的重要方法,它可以根据不同的情况动态的选择执行哪一个函数。在派生类中实现虚函数应该满足与基类的同名函数完全相同,并且使用关键字virtual修饰,本题中由输出结果中的f1functionofderive可知,必须将基类base的成员函数f1()定义为虚函数;

(2)主要考查对派生类定义格式的掌握,应该使用“:”后面是继承列表,而“::”是作用域符;

(3)主要考查类对象的定义与使用,p是一个指针类型的变量,给它的赋值应该是一个地址,即使用取地址操作符&。