网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)

对于下面定义的类MyClass,请在函数f( )中添加对象成员把n的值修改为50。

class MyClass

{

public:

MyClass(int x){n=x;}

void SetNum(int n1){n=n1;}

private:

int n;

};

void f()

{

My Class*ptr=new MyClass(45);

【12】

}


参考答案

更多 “ 对于下面定义的类MyClass,请在函数f( )中添加对象成员把n的值修改为50。class MyClass{public:MyClass(int x){n=x;}void SetNum(int n1){n=n1;}private:int n;};void f(){My Class*ptr=new MyClass(45);【12】} ” 相关考题
考题 使用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**}

考题 如下类定义中包含了构造函数和复制构造函数的原型声明,请在画线处填写正确的内容,使复制构造函数的声明完整。class my(21ass{private:int data:public::MyClass(int value);//构造函数MyClass(const______anotherObject); //复制构造函数

考题 使用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; }

考题 使用VC6打开考生文件夹下的工程MyProj7。此工程包含一个源程序文件MyMain7.cpp。其中定义了类Sample,但类Sample的定义并不完整。请按要求完成下列操作,将类Sample的定义补充完成:①定义私有数据成员n,它是int型的数据。请在注释“//* *1**”之后添加适当的语句。②完成重载构造函数Sample()的定义,使Sample对象的默认值:n=0。请在注释“//* *2* *”之后添加适当的语句。③完成成员函数add()的类体内的定义,使成员函数返回的Sample对象的值n为两类Sample对象s1和s2的私有成员n的和。请在注释“//* *3* *”之后添加适当的语句。④完成成员函数disp()的类外定义,使其以“n=”的格式将Sample对象的值输出到屏幕上。请在注释“* *4* *”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain7.cpp清单如下://MyMain7.cppinclude<iostream>using namespace std;class Sample{private://* * 1* *public:Sample(){}//* *2* *Sample add(Sample s1,Sample s2){//* *3* *}void disp();};void Sample: :disp(){//* * 4 * *}int main(){Sample s1(10),s2(5),s3;cout<<"s1:";s1.disp();cout<<"\n S2:";s2,disp();s3.add(s1,S2);cout<<"\n s3.add(s1,s2)\n s3:";s3.disp();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;}

考题 有如下类定义:classMyClass{intvalue;public:MyClass(intn):value(n){}intgerValue()const{returnvalue;}};则类MyClass的构造函数的个数是()A、1个B、2个C、3个D、4个

考题 下面类的定义,有( )处错误。 classMyClass {public: voidMyClass(); ~MyClass(intvahle); private: inti=0;};A.1B.2C.3D.4

考题 使用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;}

考题 下面是类MyClass的定义,对定义中各种语句描述正确的是( )。class MyClass { publiC: void MyClass(int a) //①{ x=a; ) int func(int a,int b) //②{ x=a; y=b; } int func(int a,int b,int c=0) //③{ x=a; y=b; z=c; } static void resetValue() //④{ x=0; } private: int X,y,Z; };A.语句①是类MyClass的构造函数定义B.语句②和语句③实现类成员函数的重载C.语句④实现对类成员变量x的清零操作D.语句①、②、③和④都不正确

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

考题 下列类定义中包含了构造函数和拷贝构造函数的原型声明,请在横线处填写正确的内容,使拷贝构造函数的声明完整。class myClass{private:int data;public:myClass(int value);//构造函数myClass(const______another Object);//拷贝构造函数}

考题 有如下的类模板定义: templateclassMyClass{TYPE n; public:MyClass(TYPE k);… }; 有如下的类模板定义:template<typenameTYPE>classMyClass{TYPE n;public:MyClass(TYPE k);…};其中构造函数MyClass用的值初始化数据成员n。因此在模板类体外,构造函数MyClass应定义______。

考题 类MyClass的定义如下: classMyClass { public: MyClass(){value=0;} SetVariable(inti){valtic=i;} private: intvalue; }; MyClass*P,my;p=&my; 则对下列语句序列正确的描述是( )。A.语句p=&my;是把对象my赋值给指针变量PB.语句MyClass*P,my;会调用两次类MyClass的构造函数C.对语句*P.SetVariable(5)的调用是正确的D.语句P-SetVariable(5)与语句my.SetVariable(5)等价

考题 类MyClass的定义如下,若要对value赋值,则下面语句正确的是( )。 classMyClass { public: MyClass( ){} MyClass(inti){value=newint(i);} int*value; };A.MyClassmy;my.value=10;B.MyClassmy;*my.value=10;C.MyClassmy;my.*value=10;D.MyClassmy(10);

考题 有如下类定义: classMyClass( public: ____ private: intdata; }; 若要为Myclass类重载流输入运算符,使得程序中可以“cinobj;”形式输入MyClasS类的对象obj,则横线处的声明语句应为( )。A.friendistream&operator(istream&is,MyClass&a);B.friendistream&operator(istream&is,MyClassa);C.istream&operalor(istream&is,MyClass&a);D.istream&operator(istream&is,Myclassa);

考题 下面是类MyClass的定义,对定义中各语句描述正确的是( )。 class MyClass { private: int x,y, z; public: void MyClass(int A) { x=a; } //① int f(int a, int B) //② { x=a; y=b; } int f(int a,A.语句①是类MyClass 的构造函数的定义B.语句②和③实现类成员函数的重载C.语句④实现对类成员变量x的更新操作D.语句①、②、③和④都不正确

考题 已知类MyClass的定义如下: ClassMyClass{ public: MyClass(intd){data=d;} ~MyClass(){} private: intdata; }; 下列对MyClass类对象数组的定义和初始化语句中,正确的是( )。A.MyClassarray[2];B.MyClassarray[2]={MyClass(5)};C.MyClassarray[2]={MyClass(5),Myclass(6)};D.MyClass*array=newMyClass[2];

考题 有以下程序: #includeiostream usingnamespaeestd; classMyClass { public: MyClass(intn){number=n;} //拷贝构造函数 MyClass(MyClass&other){number=other.number;} ~MyClass(){} private: intnumber; }; MyClassfun(MyClassp) { MyClasstemp(p); returntemp; } intmain() { MyCIassobj1(10),obj2(O); MyClassobj3(obj1); obj2=fun(obj3); return0; 程序执行时,MyClass类的拷贝构造函数被调用的次数是( )。A.5B.4C.3D.2

考题 有以下类定义: classMyClass { private: intid; chargender; char*phone;public: MyClass():id(0),gender(#),phone(NULl){} MyClass(intn0,charge=#,char*ph=NULL) {id=no;gender=ge;phone=ph;} }; 下列类对象定义语句中错误的是( )。A.MyClassmyObj;B.MyClassmyObj(11,"13301111155");C.MyClassmyObj(12,m);D.MyClassmyObj(12);

考题 对于下面定义的类MyClass,在函数f()中将对象成员n的值修改为50的语句应该是( )。 class MyClass { public: MyClass(int X){n:x;} void SetNum(int n1){n=n1;} private: int n; } int f() { MyClass *ptr=-new MyClass(45); ______ }A.MyClass(50)B.SetNum(50)C.ptr->SetNum(50)D.ptr->n=50

考题 对于下面定义的类MyClass,在函数f()中将对象成员n的值修改为50的语句应该是 ( )。 class MyClass { public: MyClass(int X){n=x;} void SetNum(int nl){n=nl} private: int n; } int f() { MyClass*ptr=new MyClass(45); ______ }A.MyClass(50)B.SetNum(50)C.ptr->SetNum(50)D.ptr->n=50

考题 对于常成员函数,下面描述正确的是( )。A.类的成员函数可以操作常对象B.类的成员函数不能操作常对象C.只有常成员函数可以操作常对象D.在常成员函数中,常对象可以被更新

考题 以于下面定义的类MyClass, 在函数f()中将对象成员n的值修改为50的语句应该是( )。 class MyClass { public: MyClass (int x) { n=x; } void SetValue(int n1) { n=n1; } private: int n; }; int f() { MyClass *ptr = new MyClass(45); ________________; }A.MyClass(50)B.SetValue (50)C.ptr->SetValue(50)D.ptr->n=50

考题 下面是类MyChss的定义,对定义中语句描述正确的是( )。class MyClass{public:void MyClass(int a){X=a;) //①int f(int a, int b) //②{X=a;Y=b;}int f(int a,int b,int c=0) //③{X=a;Y=b;Z=c;stahc void g (){X=10;) //④private:int X,Y,Z;};A.语句①是类MyClass的构造函数定义B.语句②和语句③实现类成员函数的重载C.语句④实现对类成员变量X的更新操作D.语句①②③和④都不正确

考题 如下类定义中包含了构造函数和拷贝构造函数的原型声明,请在横线处填写正确的内容,使拷贝构造函数的声明完整。Class myClass{private:int data;public:myClass(int value);//构造函数myClass(const【 】anotherObject);//拷贝构造函数}

考题 使用VC6打开考生文件夹下的工程test16_3,此工程(1)定义类Cat 的保护数据成员itsAge用于表示年龄,它是int型的数据。请在注释“//**1**”之后添加适当的语句。(2)定义类Cat的保护数据成员GetAge()的类外定义,返回成员的itsAge值,请在注释“//**2**”之后添加适当的语句。(3)完成成员函数SetAge(int age)的类外定义,把数据成员itsAge赋值为参数age的值,请在注释“//**3**”之后添加适当的语句。(4)完成成员函数Meow的类外定义,使其输出字节符串“meow.”到屏幕上。请在注释“**4**”后添加适当的语句。输出结果如下:meow.kitty is a cat who is 5 years old.meow.注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件testll3.cpp清单如下:include<iostream.h>class Cat{public:int GetAge();void SetAge(int age);void Meow();protected://**1**};int Cat::GetAge(){//**2**}void Cat::SetAge(int age){//**3**}void Cat: :Meow(){//**4**}void main ( ){Cat kitty;kitty.Meow();kitty. SetAge(5);cout<<"kitty is a cat who is ";cout<<kitty.GetAge();cout<<" years old.\n";kitty. Meow();}

考题 多选题对于C++中类(class)与结构(struct)的描述正确的为()A类中的成员默认是private的,当是可以声明public,private和protected,结构中定义的成员默认的都是publicB结构中不允许定义成员函数,当是类中可以定义成员函数C结构实例使用malloc()动态创建,类对象使用new操作符动态分配内存D结构和类对象都必须使用new创建E结构中不可以定义虚函数,当是类中可以定义虚函数F结构不可以存在继承关系,当是类可以存在继承关系