首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C++承袭填空题

2012-11-08 
C++继承填空题我是C++菜鸟来的,学得不够深入,继承,虚函数略懂一点,面试过一道C++填空题,我没做出来,请教各

C++继承填空题
我是C++菜鸟来的,学得不够深入,继承,虚函数略懂一点,面试过一道C++填空题,我没做出来,请教各位大侠~~~~~~~~~

最后输出的结果是:
这是票据头
这是票正文
这是票据脚
——————
这是票据头
这是票据脚


#include <iostream>
using namespace std;

/*
输出结果:
这是票据头
这是票正文
这是票据脚
——————
这是票据头
这是票据脚
*/

class A{
public:
_______printT()///////////////////////第一个空__ printT()
{
cout<<"这是票据正文!"<<endl;
}
};

class B:public A
{
public:
B(A *t)
{
ticke=t;
}
void printT()
{
if(ticke != NULL)
{
ticke->printT();
}
}
private:
A *ticke;
};

class C:public B
{
public:
C(A *t):_______{}////////////////////////第二个空C(A *t):___
void printT()
{
cout<<"这是票据头!"<<endl;
B::printT();
}
};

class D:public B
{
public:
D(A *t):_______///////////////////////第三个空D(A *t):___
void printT()
{
B::printT();
cout<<"这是票据脚注!"<<endl;
}
};


int main(void)
{
A t;
D f(&t);
C h(___);///////////////////////第四个空 C h(___);

h.printT();
cout<<"—————————"<<endl;
D a(NULL);
C b(___);///////////////////////第五个空C b(___);
b.printT();
return 0;
}

[解决办法]
第一空:virtual void 
第二空:B(t)
第三空:B(t){}
第四空:&f
第五空:&a

热点排行