设计一个Pair类,Pair类声明如下: class Pair { public: //添加函数 private: int first; int second; }; 要求: 1、添加构造函数,完成初始化。5分 2、为每个数据成员添加设置和读取值的成员函数 5分 3、定义一个成员函数,完成first和second两个数据成员值的交换 5分

设计一个Pair类,Pair类声明如下: class Pair { public: //添加函数 private: int first; int second; }; 要求: 1、添加构造函数,完成初始化。5分 2、为每个数据成员添加设置和读取值的成员函数 5分 3、定义一个成员函数,完成first和second两个数据成员值的交换 5分


参考答案和解析
创建pair<>对象只能调用其构造函数

相关考题:

使用VC6打开考生文件夹下的工程test5_3。此工程包含一个源程序文件test5_3.cpp,其中定义了一个类Pn,用于求n!。请按要求完成下列操作,将程序补充完整。(1)定义私有数据成员value(存放n)和fact(存放n!),它们都是ht型的数据。请在注释“//**1**”之后添加适当的语句。(2)完成默认构造函数Pn的定义,使Fn对象的数据成员value值为i,fact值为1。请在注释“//**2**”之后添加适当的语句。(3)完成函数Cal的定义,该函数计算value的阶乘,并将运算结果保存在fact中,要求使用while循环实现。请在注释“//**3**”之后添加适当的语句。(4)将主函数补充完整,直接调用类的成员函数,在界面上输出value的阶乘值。请在注释“//**4**”之后添加适当的语句。注意;除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test5_3.cpp清单如下:include<iostream.h>class Fn{//**1**public:Fn(int i);void Cal();void disp();};Fn::Fn(int i){//**2**}void Fn::Cai(){//**3**fact*=i--;}void Fn::disp(){cout<<value<<"!="<<fact<<endl;}void main(){int value;cout<<"Enter the value:";cin>>value;Fn A(value);//**4**}

使用VC6打开考生文件夹下的工程MyProj11。此工程包含一个源程序文件 MyMain11.cpp。程序中定义了3个类A、B和C,但类C的定义并不完整。请按要求完成下列操作,将类的定义补充完成:①类C是基类A和B公有派生来的。请在注释“//* *1* *”之后添加适当的语句。②完成构造函数C(int k)定义,采用初始化列表的方式使基类A私有成员a初始化为k-2,基类B的私有成员b初始化为k+2,类C的私有成员c初始化为k。请在注释“//* *2* *”之后添加适当的语句。③完成类Derived的成员函数disp()的类体外的定义。函数disp()中要分别显式调用基类A、B的disp()函数,然后要输出私有成员c的值。请在注释“//* *3* *”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain11.cpp清单如下;//MyMain11.cppinclude <iostream>using namespace std;class A{private:int a;public:A(int i) { a=i;}void disp(){cout<<a<<" , "}};class B{private:int b;public:B(int j){ b=j;}disp ( ){cout<<b<<", ";}};//* * *1* * *{private:int c;public://* * *2* * *void disp();};void c::disp(){//* * *3* * *}int main ( ){C obj(10);obj.disp();return 0;}

使用VC6打开考生文件夹下的工程test23_3,此工程包含一个源程序文件test23_3.cpp,其中定义了类X和它的友元类Y,但它们的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)将类X的静态数据成员y初始化为1。请在注释“//**1**”之后添加适当的语句。(2)完成类Y的构造函数Y(int i,int j)的定义,将参数i赋值给类Y的数据成员,X的对象a中的数据成员x,并且把参数j赋值给类X的数据成员y,请在注释“//**2**”之后添加适当的语句。(3)完成类Y的成员函数void Display()的定义,将Y的数据成员,X的对象a中的数据成员x和类X的数据成员y按照“x=_,y=_”的形式显示出来(“_”代表一个数字),请在注释“//**3**”之后添加适当的语句。输出结果如下:x=5,y=lx=6,y=9x=5,y=9注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test23_3.cpp清单如下:include<iostream.h>class X{friend class Y;public:void Set(int i) {x=i;}void Display(){cout<<"x="<<x<<",";cout<<"y="<<y<<endl;}private:int x;static int y;};class Y{public:Y(int i, int j)void Display();private:X a;};//**1**Y::Y(int i, int j){//**2**}void Y::Display(){//**3**}void main ( ){X b;b.Set(5);b.Display();Y c(6,9);c.Display();b.Display();}

类Sampie的构造函数将形参data赋值给数据成员data。请将类定义补充完整。class Sample{public:Sample(int data=0);priVate:int data:};Sample::Sample(int datA) {______}

使用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 注意:除在指定的位置添加语句之外,请不要改动程序的其他部分。 试题程序: includeiostream.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): couta.getaendl: couta.getbendl: a.show; }

( 10 )类 Sample 的构造函数将形参 data 赋值给数据成员 data 。请将类定义补充完整。class Sample{public:Sample(int data=0);Private:Int data;};Sample::Sample(int data){【 10 】}

应添加“intseta(intx)”。 (2)应添加“classTC3:publicTC1,privateTC2”。 (3)应添加“intC;”。 (4)应添加“seta(x);”。 【解析】本题第1处要求“完成类TCl的成员函数seta定义,定义seta对象X为int类型”。类的成员函数是函数的一种,它与一般函数的区别是,它是一个类的成员,出现在类体中。所以类TCl中的成员函数,就是在TCl中定义题目中要求的参数为intx的seta函数,即“intseta(intx)”。第2处要求“完成类TCl(公有)和类TC2(私有)派生类TC3的定义”。从已有的类产生一个新的子类,称为类的派生。声明派生类的一般形式为“class派生类名;[继承方式]基类名”。根据声明派生类的一般形式,这里补全“class TC3:publicTC1,privateTC2”。第3处要求“定义类TC3中的私有成员C为int”。在类TC3中的private数据成员区域,定义intC,印在第3处补全“intC;”。第4处要求“完成setc中对基类的变量a的赋值”。基类为TCl,setc对于该类a的赋值,是intseta(intx)函数的赋值,即“seta(x);”

使用VC6打开考生文件夹下的工程test42_3。此工程包含—个test42_3.cpp,其中定义了类Cpolygon、COutput和CTriangle,其中CTriangle类由Cpolygon和COutput类public派生,但三个类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类CPolygon的保护数据成员width和height,它们都是int型的数据。请在注释“//**1**”之后添加适当的语句。(2)完成类CPolygon的成员函数set_values(int a,int b),使参数a和b分别赋值给保护数据成员width和height,请在注释“//**2**”之后添加适当的语句。(3)完成类Coutput的成员函数output(int)的定义,将传入的参数为血型的i输出到屏幕并换行,请在注释“//**3**”之后添加适当的语句。(4)完成派生类CTriangle的声明,它由Cpolygon和COutput类public派生,请在注释“//**4**”之后添加适当的语句。源程序文件test42_3.cpp清单如下:include <iostream.h>class CPolygon{protected:// ** 1 **public:void set_values(int a, int b){// ** 2 **}};class COutput{public:void output(int i);};void COutput::output(int i){// ** 3 **}// ** 4 **{public:int area (void){return (width * height / 2);}}int main (){CTriangle trgl;trgl.set_values (4,5);trgl.output (trgl.area());return 0;}

使用VC6打开考生文件夹下的工程test37_3。此工程包含一个test37_3.cpp,其中定义了类Letter和Number以及Grid,其中Grid类由Letter类和Number类public派生,但三个类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)添加类Letter的带一个参数c的构造函数,c是char型的数据,默认值为'A',该函数把参数c的值赋给类的保护成员ch,请在注释“//**1**”之后添加适当的语句。(2)添加类Number的带一个参数n的构造函数,n是int型的数据,默认值为0,该函数把参数n的值赋给类的保护成员num,请在注释“//**2**”之后添加适当的语句。(3)添加派生类Grid构造函数的定义,传入的参数为char型的c和血型的n,并将其分别赋值给基类的ch和num,请在注释“//**3**”之后添加适当的语句。(4)完成派生类Grid的友元函数——“<<”运算符重载的定义,使其以格式“[g.ch,g.num]”输出,请在注释“//**4 **”之后添加适当的语句。源程序文件test37_3.cpp清单如下:include<iost ream. h>class Letter{protected:char ch;public:// ** 1 **};class Number{protected:int num;public:// ** 2 **};class Grid : public Letter, public Number{public:// ** 3 **friend ostream operator<<(ostream o,Grid g);};// ** 4 **{o << "[" << g.ch << ", "<< g.num << "]";return o;}int main ( ){Grid g('C', 3);cout << "Grid reference: "<< g << end1;return 0;}

使用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( );}

使用VC6打开考生文件夹下的工程test24_3,此工程包含一个源程序文件test24_3.cpp,其中定义了抽象类point和它的派生类line,但它们的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类point的构造函数,函数含参数i和j它们都是int型数据,默认值都是0,用i和j分别将point的数据成员x0和y0初始化。请在注释“//**1**”之后添加适当的语句。(2)完成类point的成员函数纯虚函数void set()和void draw()的定义,请在注释“//**2**”之后添加适当的语句。(3)添加类line的构造函数,函数含参数i,j,m和n,它们都是int型数据,默认值都是0,用i和j分别将point的数据成员x0和y0初始化。请在注释“//**3**”之后添加适当的语句。输出结果如下:line::set()called.注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test24_3.cpp清单如下:include<iostream.h>class point{public://**1**//**2**protected:int xO,yO;}class line: public point{public://**3**{x1=m;y1=n;}void set(){ cout<<"line::set() called.\n"; }void draw(){ cout<<"line::draw() called.\n"; }protected:int x1,y1;};void main(){line *lineobj = new line;1ineobj->set();}

使用VC6打开考生文件夹下的工程test41_3。此工程包含一个test41_3.cpp,其中定义了类Rectangle,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类Rectangle的私有数据成员left,top和fight,bottom,它们都是int型的数据。请在注释“//**1**”之后添加适当的语句。(2)添加类Rectangle的带四个int型参数1、t、r、b的构造函数的声明,并使这四个参数的默认值均为0,请在注释“//**2**”之后添加适当的语句。(3)添加类Rectangle的成员函数SetTop()参数为int型的t,作用为把t的值赋给类的数据成员top,添加类Rectangle的成员函数SetBottom()参数为int型的t,作用为把t的值赋给类的数据成员bottom,请在注释“//**3**”之后添加适当的语句。(4)完成派生类Rectangle的成员函数Show()的定义,使其以格式“right-bottom point is(right,bottom)”输出,请在注释“//**4**”之后添加适当的语句。源程序文件test41_3.cpp清单如下:include <iostream.h>class Rectangle{// ** 1 **int right, bottom;public:// ** 2 **~ Rectangle(){};void Assign(int 1, int t, int r, int b);void SetLeft(int t){left = t;}void SetRight(int t){right = t;}// ** 3 **void SetBottom(int t){bottom = t;}void Show();};Rectangle::Rectangle(int 1, int t, int r, int b){left = 1; top = t;right = r; bottom = b;}void Rectangle::Assign(int 1, int t, int r, int b){left = 1; top = t;right = r; bottom = b;}void Rectangle::Show(){cout<<"left-top point is ("<<left<<","<<top<<")"<<'\n';// ** 4 **}void main(){Rectangle rect;rect.Show();rect.Assign(100,200,300,400);rect.Show();}

使用VC6打开考生文件夹下的工程MyProj13。此工程包含一个源程序文件MyMain12.cpp。程序中定义了两个类Base和Derived,但类的定义并不完整。请按要求完成下列操作,将类的定义补充完成:①定义类shapes的保护成员x和y,它们都是整型变量。请在注释“//* *1* *”之后添加适当的语句。②完成构造函数shapes(int d,int w)定义,使类shapes的保护成员x、y分别初始化为d、w,并分别具有默认值0、0。请在注释“//* *2* *”之后添加适当的语句。③完成类shapes的成员函数setvalue(int d,int w)的定义,shapes类的数据成员x和y分别被设置成d和w。请在注释“//* *3* *”之后添加适当的语句。④将类shapes的成员函数void disp()设置成纯虚函数。请在注释“//* *4* *”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain13.cpp清单如下://MyMain13.cppinclude<iostream>using namespace std;class shapes{//* * *1* * *public://* * *2* * *void setvalue(int d,int w){//* * *3* * *}//* * * 4 * * *};class square : public Shapes{public:void disp(){cout<<x*y<<end1;}};int main(){shapes*ptr;square s1;ptr=s1;ptr->setvalue(10,5);ptr->disp();return 0;}

使用VC6打开考生文件夹下的工程test29_3。此工程包含一个test29_3.cpp,其中定义了二维坐标类Coordinate和三维坐标类ThreeDCoord,其中ThreeDCoord类由Coordinate类public派生,但两个类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类Coordinate的保护数据成员x和y,它们都是int型的数据,代表二维坐标的横纵坐标值。请在注释“//**1 **”之后添加适当的语句。(2)根据类Coordinate定义后的成员函数Display的实现,补充该函数在类Coordinate定义体内的声明,Display为二维坐标类的虚函数。请在注释“//**2**。”之后添加适当的语句。(3)完成二维坐标类Coordinate的构造函数,将参数a和b分别赋值给数据成员x和y。请在注释“//**3**”之后添加适当的语句。(4)根据ThreeDCoord类构造函数的声明,补充ThreeDCoord构造函数的实现,参数a和b通过调用基类的构造函数来初始化基类的数据成员x和y,c赋值给数据成员2。请在注释“//**4**”之后添加适当的语句。输出结果如下;[1,2][3,4,5]注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件tese9_3.cpp清单如下:include<iostream.h>class Coordinate{protected://** 1 **public:Coordinate(int a=0, int b=0);//** 2 **};Coordinate::Coordinate(int a, int b){//** 3 **}void Coordinate::Display() const{cout << '[' << x << ", "<< y << ']' << end1;}class ThreeDCoord:public Coordinate{int z;public:ThreeDCoord(int a=0, int b=0, int c=0);virtual void Display() const;};//** 4 **void ThreeDCoord::Display() const{cout << '[' << x << ", "<< y << ", "<< z << ']' << end1;}void main ( ){Coordinate c(1, 2);ThreeDCoord t(3, 4, 5);c.Display ();t.Display ();}

使用VC6打开考生文件夹下的工程test20_3,此工程包含一个源程序文件tes00_3.cpp,其中定义了用于表示复数的类comp,但类comp的定义并不完整。请按要求完成下列操作,将类comp的定义补充完整。(1)定义comp的构造函数,函数含参数x和y,它们都是in,型的数据,默认值都为0,请使用参数列表的形式分别将类数据成员a和b初始化x和y的值。请在注释“//**1**”之后添加适当的语句。(2)完成类comp的成员函数input(int x,int y)的定义,将int型的参数x和y分别赋值给数据成员s和b,请在注释“//**2**”之后添加适当的语句;(3)完成类comp的友元函数friend compplus(comp x,comp y)的定义,该函数首先要定义一个comp类的对象c,然后将参数x和y的数据成员a与b分别相加并分别赋值给c的成员a和b,最后返回c的值,请在注释“//**3**”之后添加适当的语句。输出结果如下:10+20i2+3iresult:12+23i注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test20_3.cpp清单如下:include <iostream.h>class comp{int a;int b;public://**1**friend comp plus(comp x, comp y);void input(int x,int y){//**2**}void output ( ){cout<<a<<'+'<<b<<"i"<<end1;}};comp plus(comp x, comp y){//**3**c.b=x.b+y.b;return c;}void main(){comp x(10,20),y,z;y.input(2,3);z=plus(x,y);x.output();y.output();cout<<"result:";z.output();}

使用VC6打开考生文件夹下的工程test36_3。此工程包含一个test36_3.cpp,其中定义了类CRectangle,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类CRectangle的数据成员width和height,它们都是int型的数据。请在注释“//**1**”之后添加适当的语句。(2)添加类CRectangle的友元函数duplicate()的声明,其返回值类型和参数类型均为Crectangle的,请在注释“//**2**”之后添加适当的语句。(3)完成类Crectangle的成员函数set_values的定义,把传入的参数a和b分别赋值为数据成员width和height,请在注释“//**3**”之后添加适当的语句。(4)完成派生类Crectangle的友元函数duplicate的定义,把函数中的临时对象rectres的值返回主函数,请在注释“//** 4**”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test36_3.cpp清单如下:include <iostream.h>class CRectangle{// ** 1 **public:void set_values (int, int);int area (void) {return (width * height);}// ** 2 **};void CRectangle::set_values (int a, int b){// ** 3 **}CRectangle duplicate (CRectangle rectparam){CRectangle rectres;rectres.width = rectparam.width*2;rectres.height = rectparam.height*2;// ** 4 **}void main ( ){CRectangle rect, rectb;rect.set_values (2,3);rectb - duplicate (rect);cout << rectb.area()<<end1;}

使用VC6打开考生文件夹下的工程MyProj1。此工程包含千个源程序文件 MyMainl.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整。请按要求完成下列操作,将类Date的定义补充完成:①定义私有数据成员year、month和day分别用于表示年、月、日,它们都是int型的数据。请在注释“//**1**”之后添加适当的语句。②完成默认构造函数Date的定义,使Date对象的默认值为:year=1,month=1, day=1,请在注释“//**2**”之后添加适当的语句。③完成重载构造函数Date(int y, int m, int d)的定义,把数据成员year、month和day分别初始化为参数y、m和d的值,请在注释“//**3**”之后添加适当的语句。④完成成员函数print的类外定义,使其以“年-月-日”的格式将Date对象的值输出到屏幕上。请在注释“//**4**”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain1.cpp清单如下://MyMainl. cppinclude <iostream>using namespace std;class Date{public://* * 2 * *Date(int y, int m, int d){//* * 3 * *}void print() const;private://data member//* * 1 * *};void Date: :print () const{//* * 4 * *}int main ( ){Date national_day(1949,10,1);national_day.print();return 0;}

使用VC6打开考生文件夹下的工程MyProj15。此工程包含一个源程序文件MyMain15.cpp。程序中定义了3个类A、B和C,但类的定义并不完整。请按要求完成下列操作,将类的定义补充完成:①类Inherit是类Base的公有派生类。请在注释“//* *1* *”之后添加适当的语句。②完成类Inherit成员函数setvalue(int a,int b,int c,int d)的定义,此函数实现的功能是将基类成员x、y、z和派生类的数据成员m的值分别设置成a、b、c和d。请在注释“//* *2* *”之后添加适当的语句。③完成类Inherit成员函数display()的类体外定义,此函数实现的功能是以“,,,,”的格式将x、y、z和m的值输出到屏幕上。请在注释“//* *3* *”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain15.cpp清单如下://Mymain15.cppinclude<iostream>using namespace std;class Base{private:int x;protected:int y;public:int z;void setx(int i){x=i;}int getx()const{return x;}};//* * *1* * *{private:int m;public:void setvalue(int a,int b,int c,int d){//* * *2* * *}void display()const;};//* * *3* * *int main(){Inherit A;A.setvalue(1,2,3,4);A.display();return 0;}

有如下类定义:class Bag {public:Bag(int p,char s='M'):price(p),size(s) { count++; }~Bag() { count--; }int GetPrice() { return price; }int GetPrice() const { return price; }void SetPrice(int val) const { price=val; }private:int price;char size;static int count;};下列关于类成员的叙述中,正确的是( )。A. 成员函数GetPrice存在重定义B.构造函数的参数不能设置默认值C.析构函数中不能访问静态数据成员D.成员函数SetPrice不能定义为常函数

有如下类声明: class Foo{ int bar; }; 则Foo类的成员bar是A.公有数据成员B.公有成员函数C.私有数据成员D.私有成员函数

下列程序在构造函数和析构函数中申请和释放类的数据成员int * a,申请时使用形参b初始化a,请填空。class A{public:A(int b) ;~A( ) ;private:int * a;};A: :A(int b){______;}A: :~A( ){______;}

有如下的类的模板定义: template class MyClass { private:T number; public:MyClass( 有如下的类的模板定义:template <class T>class MyClass{private:T number;public:MyClass(T k);…};其中构造函数MyClass()用k的值初始化数据成员n。因此在模板类体外,构造函数MyClass应定义为【 】。

使用VC6打开考生文件夹下的工程test35_3。此工程包含一个test35_3.cpp,其中定义了时钟类clock,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类clock的私有数据成员hour和minute,它们都是int型的数据。请在注释“//**1**”之后添加适当的语句。(2)补充完全类clock的构造函数,私有数据成员hour和minute分别初始化为参数h和m的值,请在注释“//**2**”之后添加适当的语句。(3)完成类clock的成员函数printtime,的定义,该函数以“Now the time is hour:minute”的格式输出数据成员hour和 minute的值,如hour=3、minute=59,则输出为“Now the time is 03:59”,请在注释“//**3**”之后添加适当的语句。(4)完成类clock的成员函数addoneminutetime的定义,该函数可将clock类对象表示的时间加一分钟,如现在hour=3、 minute=59,运行该函数后hour=4、minute=0。请在注释“//**4**”之后添加适当的语句。程序的输出结果如下:Now,the time is 12:59Now,the time is 13:00注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test35_3.cpp清单如下:include<iostream.h>class clock{private:// ** 1 **public:clock(int h, int m){// ** 2 **}int presenthour(){return hour;}int presentminute(){return minute;}void addoneminutetime();void printtime();};void clock::printtime(){if(hour<10) cout<<'0';// ** 3 **if(minute<10) cout<<'0';cout<<minute<<end1;}void clock::addoneminutetime(){// ** 4 **if(minute>59){minute-=60;hour++;}if(hour>23)hour=0;}void main ( ){clock c(12,59);c.printtime();c.addoneminutetime();c.printtime();}

使用VC6打开考生文件夹下的工程MyProj12。此工程包含一个源程序文件MyMain12.cpp。程序中定义了两个类Base和Derived,但类的定义并不完整。请按要求完成下列操作,将类的定义补充完成:①类Derived是基类Base公有派生来的。请在注释“//* *1* *”之后添加适当的语句。②完成构造函数Derived(int x)定义,采用初始化列表的方式使基类Base私有成员a初始化为x,类Derived的私有成员b初始化为x+1。请在注释“//* *2* *”之后添加适当的语句。③完成类Derived的成员函数show()的类体外的定义。函数show()中要输出基类数据成员a的值,然后要输出私有成员b的值。请在注释“//* *3* *之后添加适当的语句。注意;除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain12.cpp清单如下://MyMain12.cppinclude<iostream>using namespace std;class Base{public:int a;Base(int i){a=i;}};//* * * 1 * * *{private:int b;public://* * * 2 * * *void show();};void Derived::show(){//* * * 3 * * *}int main(){Derived d(1);d.show();return 0;}

使用VC6打开考生文件夹下的工程MyProj10。此工程包含一个源程序文件MyMain10.cpp。程序中定义了两个类Base和Derived,但类的定义并不完整。请按要求完成下列操作,将类的定义补充完成:①类Derived是基类Base公有派生来的。请在注释“//* *1* *”之后添加适当的语句。②完成构造函数Derived(int i)定义,采用初始化列表的方式使基类Base私有成员a初始化为i+1,类Derived的私有成员b初始化为i。请在注释“//* *2* *”之后添加适当的语句。③完成类Derived的成员函数show()的类体外的定义。函数show()中要显式调用基类的show()函数,然后要输出私有成员b的值。请在注释“//* *3**”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain10.cpp清单如下://MyMain10.cppinclude<iostream>using namespace std;class Base{public:Base(int x){a=x}void show(){cout<<a;}private:int a;};//* * *1* * *{public://* * * 2 * * *void show();private:int b;};void Derived :: show(){//* * * 3 * * *}int main(){Derived d(1), *pb;pb=d;pb->show();return 0;}

若classB中定义了一个classA的类成员Aa,则关于类成员的正确描述是()A、在类B的成员函数中可以访问A类的私有数据成员B、在类B的成员函数中可以访问A类的保护数据成员C、类B的构造函数可以调用类A的构造函数做数据成员初始化D、类A的构造函数可以调用类B的构造函数做数据成员初始化

下列哪一种顺序是派生类构造函数正确的调用其它构造函数顺序。()A、基类构造函数—对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员B、基类构造函数—派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数C、派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数—基类构造函数D、对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员—基类构造函数

单选题下列哪一种顺序是派生类构造函数正确的调用其它构造函数顺序。()A基类构造函数—对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员B基类构造函数—派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数C派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数—基类构造函数D对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员—基类构造函数