问题 填空题

使用VC++6.0打开考生文件夹下的源程序文件3.cpp。程序通过继承关系,实现对姓名的控制。类TC1实现对名字访问的接口,TC2实现对名字的设置和输出。
程序输出为
TC2Name
May
其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)在类TC1中定义接口函数GetName为纯虚函数。请在注释1后添加适当的语句。
(2)函数GetName2用于获得名字的缓存,但只获得允许读操作这个缓存,请在注释2后添加适当的语句。
(3)实现TC2的构造函数,请在注释3后添加适当的语句。
(4)完成TC2的构造函数,实现对名字的处理。请在注释4后添加适当的语句。
注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其他的程序代码。
试题程序:
#include<iostream.h>
class TC1

public:
//********1********

class TC2:public TC1

public:
void GetName()

cout<<"TC2Name"<<end1;

//********2********

return m_str;

//********3********

int 1;
for(i=0;str[i]!=0;i++)
m_str[i]=str[i];
//********4********

private:
char m_str[32];

void main()

TC1 *p;
TC2 obj1("May");
p=&obj1;
p—>GetName();
cout<<obj1.GetName2()<<end1;
return;

答案

参考答案:应添加“virtual void GetName()=0;”。

单项选择题
单项选择题