使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了类A、A1和A2,其中A1类由A类公有派生,A2类由A1类公有派生。 (1)定义类A的构造函数,该构造函数有一个整型的参数x,在构造函数中请将x赋值给数据成员a。请在注释“//********1********”之后添加适当的语句。 (2)定义类A1的构造函数,该构造函数有两个整型的参数x和y,在构造函数中请将x赋值给数据成员b,将y作为基类A构造函数的参数值传人。请在注释“//********2********”之后添加适当的语句。 (

题目

使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了类A、A1和A2,其中A1类由A类公有派生,A2类由A1类公有派生。 (1)定义类A的构造函数,该构造函数有一个整型的参数x,在构造函数中请将x赋值给数据成员a。请在注释“//********1********”之后添加适当的语句。 (2)定义类A1的构造函数,该构造函数有两个整型的参数x和y,在构造函数中请将x赋值给数据成员b,将y作为基类A构造函数的参数值传人。请在注释“//********2********”之后添加适当的语句。 (3)定义类A2的构造函数,该构造函数有3个整型的参数x,y和z,在构造函数中请将x赋值给数据成员C,将y和z分别赋值给基类A1构造函数的参数x和y。请在注释“//********3********”之后添加适当的语句。 (4)完成类A2的成员函数show的定义,该函数调用基类成员函数,输出基类数据成员a和b及类A2自身的数据成员C的值,上述3个值在输出时以空格隔开。请在注释“//********4********”之后添加适当的语句。 程序输出结果如下: 7 3 738 注意:除在指定的位置添加语句之外,请不要改动程序的其他部分。 试题程序: include<iostream.h> classA { inta; public: //********1******** intgeta{returna;} }; classA1:publicA { intb; public: //********2******** intgetb{returnb;} }; classA2:publicA1 { intC; public: //****,****3******** voidshow { //********4******** } }; voidmain { A2a(8.3.7): cout<<a.geta<<endl: cout<<a.getb<<endl: a.show; }


相似考题

1.使用VC6打开考生文件夹下的工程test30_3。此工程包含一个test30_3.cpp,其中定义了类A、A1和A2,其中A1类由 A类公有派生,A2类由A1类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。(1)定义类A的构造函数,该构造函数有一个整型的参数x,在构造函数中请将x赋值给数据成员a。请在注释“//** 1**”之后添加适当的语句。(2)定义类A1的构造函数,该构造函数有两个整型的参数x和y,在构造函数中请将x赋值给数据成员b,将y作为基类A构造函数的参数值传入。请在注释“//**2**”之后添加适当的语句。(3)定义类A2的构造函数,该构造函数有三个整型的参数x,y和2,在构造函数中请将x赋值给数据成员c,将y和z分别赋值给基类A1构造函数的参数x和y。请在注释“//**3**”之后添加适当的语句。(4)完成类A2的成员函数show的定义,该函数调用基类成员函数,输出基类数据成员a和b及类A2自身的数据成员c的值,上述三个值在输出时以空格隔开。请在注释“//**4**”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。程序输出结果如下:96962源程序文件test30_3.cpp清单如下:include <iostream.h>class A{int a;public://** 1 **int geta() {return a;}};class A1:public A{int b;public://** 2 **int getb() {return b;}};class A2:public A1{int c;public://** 3 **void show(){//** 4 **}};void main(){A2 a(2,6,9);cout<<a.geta ( ) <<end1;cout<<a, getb ( ) <<end1;a. show( );}

4.使用VC6打开考生文件夹下的工程MyProj6。此工程包含一个源程序文件MyMain6.cpp。在程序中,定义了一个Furniture类,Bed类和Sofa类是在Furniture类的基础上按公有继承的方式产生的派生类,Sleepersofa类是在Bed类和Sofa类的基础上按公有继承的方式产生的派生类。请按要求完成下列操作,将类Date的定义补充完成:①Bed类是在Furniture类的基础上按公有继承的方式产生的派生类,为了使程序中的多重继承关系不出现二义性。请在注释“//**1**”之后添加适当的语句。②Sofa类是在Furniture类的基础上按公有继承的方式产生的派生类,为了使程序中的多重继承关系不出现二义性。请在注释“//**2**”之后添加适当的语句。③Sleepersofa类是在Bed类和Sofa类的基础上按公有继承的方式产生的派生类。请在注释“//**3**”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain6.cpp清单如下;//MyMain6.cppinclude<iostream>using namespace std;class Furniture{public:Furniture(){}void setweight(int w){weight=w;}int getweight(){return weight;}protected:int weight;};//* *1 * * class Bed definition{public:Bed(){}void sleep(){cout<<"sleeping..."<<end1;}};//* *2* * class Sofa definition{public:Sofa(){}void watchTV(){cout<<"watching TV..."<<end1;}};//* * * 3 * * *{public:Sleepersofa(){}void Foldout(){cout<<"Fold out the sofa".<<endl;};int main(){Sleepersofa ss;ss.setweight(20);cout<<ss.getweight()<<end1;return 0;}

更多“使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了类A、A1和A2,其中A1类由A类公有派生,A2 ”相关问题
  • 第1题:

    294、假定AB为一个类,有类AB的两个对象a1,a2;则执行语句AB *a[10]={&a1,&a2};时系统自动调用该类的构造函数的次数为2。


    错误

  • 第2题:

    1、已知A类中__slots__定义为“__slots__=('a1','a2')”,B类没有__slots__定义,B是A的子类,则B类可以动态扩展的属性包括()。

    A.a1

    B.a2

    C.a1和a2

    D.任意属性


    a1;a2;b1;b2

  • 第3题:

    MHC-I类分子的a1和a2构成抗原肽结合槽


    错误

  • 第4题:

    已知A类中__slots__定义为“__slots__=('a1','a2')”,B类没有__slots__定义,B是A的子类,则B类可以动态扩展的属性包括()。

    A.a1

    B.a2

    C.a1和a2

    D.任意属性


    ABCD

  • 第5题:

    18、MHC-I类分子的a1和a2构成抗原肽结合槽


    正确