应用题 1.  使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。
    (1)在类TC中定义name为字符串类型,age为int型,请在注释1之后添加语句。
    (2)设置类TC0的基类为TC类的定义,请在注释2后添加语句。
    (3)在类TC的派生类TC0的公有成员中定义析构函数TC0,请在注释3后添加语句。
    (4)设置类TC1的基类为 TC类的定义,请在注释4后添加语句。
    程序输出结果为:
    TC class constructor
    TC0 class constructor
    TC on class constructor
    TC1 class constructor
    TC1class constructor
    TC class constructor
    TC0 class constructor
    TC class constructor
    注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其他的程序代码。
    试题程序:
    #include<iostream.h>
    class TC
    {
    //********1********
    public:
    TC() {cout << "TC class constructor" <<endl;}
    ~TC() {cout << "TC class constructor" << endl;}
    };
    //********2********
    {
    char *departmert;
    int level;
    public:
    TC0()
    {cout << "TC0 class constructor" << endl;}
    //********3********
    {cout << "TC0 class constructor" << endl;}
    };
    //********4********
    {
    char *major;
    float salary;
    public:
    TC1() {cout << "TC1 class constructor" <<endl;}
    ~TC1() {cout << "TC1 class constructor" << endl;}
    };
    void main()
    {
    TC0 s1;
    TC1 t1;
    }
【正确答案】(1)应添加char *name; int age;
   (2)应添加class TC0:public TC
   (3)应添加~TC0 ()
   (4)应添加class TC1:public TC
   
【答案解析】 本题第1处要求"TC中定义name为字符串类型,age为整型"。根据题目要求,在程序TC类中定义变量name和age,即"char *name; int age;"。第2处要求"设置类TC0的基类为TC类的定义"。在C++中,从已有的类产生一个新的子类,称为类的派生。声明派生类的一般形式为:class 派生类名:[继承方式] 基类名。根据声明派生类的一般形式,这里补全"class TC0:public TC"。第3处要求"在类TC的派生类TC0的公有成员中定义析构函数TC0"。析构函数也是一个特殊的成员函数,它的作用与构造函数相反,它的名称是在类名前面加一个"~"符号。题目中要求的类名称为"TC0"即这里补全"~TC0 ()"。第4处要求"设置类TC1的基类为 TC1类的定义",在第4处补充"class TC1:public TC"。