填空题

使用VC6打开考生文件夹下的工程test26_1,此工程包含一个源程序文件test26_1.cpp,但该程序运行有问题,请改正 函数中的错误,使该程序的输出结果为: Values are: 1,2 and 3 源程序文件test26_1.cpp清单如下; #include <iostream.h> class CommonBase { public: int x; }; /*****************found*****************/ class DeriveCommonA::public CommonBase { public: int y; }; class DeriveCommonB:public CommonBase { public: int z; }; /*****************found*****************/ class Overlapping:public DeriveCommonA; public DeriveCommonB { public: void Display() { cout<<"Values are: "<<DeriveCommonA::x<<", "<<y<<" and "<<z<<end1; } }; int main ( ) { Overlapping ov; /*****************found*****************/ ov.x=1; ov.y=2; ov.z=3; ov.Display(); return 0; }

【参考答案】

(1)错误:class DeriveCommonA::public CommonBase 正确:class Deri......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题

问答题
使用VC6打开考生文件夹下的工程test26_3。此工程包含一个test26_3.cpp,其中定义了类queue,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)完成类queue的无参数的构造函数的定义,要求把数据成员bl和el都初始化为0,同时输出queue initialized。请在注释“ **1**”之后添加适当的语句。(2)完成类queue的成员函数qput(int j)的定义,它的功能是把新的元素加入队列,过程是先依据bl的值判断数组是否已经满了,如果是就输出queue is full,否则bl自加一,并且把参数j的值存入bl指向的数组元素中,请在注释“ **2**”之后添加适当的语句。(3)完成类queue的成员函数qget()的定义,它的功能是把队列开头的元素提取出队列,并返回该值,过程是先比较el和bl的值判断队列是否已空,如果是就输出queue is empty,否则el自加一,并且把el指向的数组元素返回,请在注释“ **3**”之后添加适当的语句。程序输出结果如下:queue initializedqueue initialized33 1144 22注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test26_3.cpp清单如下:#include<iostream.h>class queue{int q[100];int bl,el;public:queue( );void qput(int j);int qget( );};queue::queue( ){ **1**}void queue::qput(int j){ **2**{cout<< queue is full n ;return;}bl++;q[bl]=j;}int queue::qget( ){ **3**{cout<< queue is empty n ;return 0;}el++;return q[el];}void main( ){queue aa,bb;aa.qput(11);bb.qput(22);aa.qput(33);bb.qput(44);cout<<aa.qget()<< <<aa.qget()<< n ;cout<<bb.qget()<< <<bb.qget()<< n ;}