更多"有以下类定义 class MyClass { private: "的相关试题:
[单项选择]有以下类定义 class MyClass { private: int id; Char gender; Char*phone; public: MyClass( ):id(0),gender(‘#’),phone(NULL){} MyClass(int no,charge=’#’,char*ph=NULL) {id=no;gender=ge;phone=ph;} ); 下列类对象定义语句中错误的是( )。
A. MyClass myObj;
B. MyClass myObj(11,”13301111155”);
C. MyClassmyObj(12,’m’);
D. MyClassmyObj(12);
[单项选择]有如下类定义
class MyClass
public:
Private:
int data;
};
若要为MyClass类重载流输入运算符>>,使得程序中可以“cin>>obj;”形式输入MyClass类的对象obj,则横线处的声明语句应为( )。
A. friend istream& operator>>(istream& is, MyClass& A) ;
B. friend istream& operator>>(istream& is, MyClass A) ;
C. istream& operator>>(istream& is, MyClass& A) ;
D. istream& operator>>(istream& is, MyClass A) ;
[单项选择]设有以下类的定义:
class Ex
{ int x;
public:
void setx(int t=0);
};
若在类外定义成员函数setx( ),以下定义形式中正确的是
A. void setx(int {…}
B. void Ex::setx(int {…}
C. Ex::void setx(int {…}
D. void Ex::setx( ){…}
[单项选择]设有以下类的定义: class Ex { int x; public: void setx(int t=0); }; 若在类外定义成员函数setx( ),以下定义形式中正确的是
A. void setx(int {...}
B. void Ex: :setx(int {...}
C. Ex: :void setx(int {...}
D. void Ex: :setx(){...}
[单项选择]设有以下类的定义:
class Ex
int x;
public:
void setx(int t=0);
;
若在类外定义成员函数setx( ),以下定义形式中正确的是
A. void setx(int t)…
B. void Ex::setx(int t)…
C. Ex::void setx(int t)…
D. void Ex::setx( )…
[单项选择]设有以下类和对象的定义:
class A
{ public:
int m;
…
};
A k1, k2,*p1,*p2;
则下面针对成员变量m的引用,错误的是
A. k1.m=1
B. k2->m=2
C. p1->m=3
D. (*p2).m=4
[单项选择]设有以下类和对象的定义: class A {public: int m; }; A k1,k2,*p1,*p2; 则下面针对成员变量m的引用,错误的是( )。
A. k1.m=1
B. k2->m=2
C. p1->m=3
D. (*p2).m=4
[单项选择]有如下类定义: class AA{ int a; public: int getRef( )eonst{return &a;} //① int getValue( )const{return a;} //② vold set(int n)eonst{a=n;} //③ friend void show(AA aA) eonst{tout<<a;} //④ }; 其中的4个函数定义中正确的是
A. ①
B. ②
C. ③
D. ④
[单项选择]有如下类定义:
Class MyClass{
int value;
public:
MyClass(int n): value(n){}
int getValue( )const{return value;}
};
则类MyClass的构造函数的个数是
A. 1个
B. 2个
C. 3个
D. 4个
[单项选择]有以下类定义 classPoint{ public: Point(int x=0,int y=0){_x=x;_y=y;} void Move (int xOff,int yOff {_x +=xOff;_y+yOff} void Print( ) const {cout<<'('<<_x<<','<<_y<<')'<<endl;} private: int_x_y; }; 下列语句中会发生编译错误的是
A. Pointpt;pt;Print();
B. const Point pt;pPrint();
C. Pointpt;pMove(1,2);
D. const Point pt;pMove(1,2);
[单项选择]有如下类定义: class XX{ int xdata: public: xx(int n=0):xdata(n){} } class YY:public XX{ int ydata; public: YY(int m=0,int n=0):xx(m),ydata(n){ } {; YY类的对象包含的数据成员的个数是
A. 1
B. 2
C. 3
D. 4
[单项选择]
有如下类定义:
class MyBase{
int k;
public;
MyBase(int n=0):k(n){}
int value( )const{return k;}
};
class MyDerived; MyBase{
int j;
public;
MyDerived(int i): j(i){}
int getK( )const {return k;}
int gutj( )const{return j;}
};
编译时发现有一处语法错误,对这个错误最佳准确的描述是()
A. 函数getK 试图访问基类的私有成员变量K
B. 在类MyDerived 的定义中,基类名MyBase 前缺少关键字public、protected 或private
C. 类MyDerived 缺少一个无参的构造函数
D. 类MyDerived 的构造的数没有对基数数据成员K 进行初始化
[单项选择]有如下类定义;class AA{int a;public:int getRef( )const{ return &a; }//①int getValue( )const{ return a; }//② void set(int n)const{ a=n; }//③friend void show(AA aa)const{ cout<<a; )//④};其中的四个函数定义中正确的是( )。
A. ①
B. ②
C. ③
D. ④
[单项选择]设有定义:
class person
{ int num;
char name[10];
public:
void init(int n,char*m);
…
};
person std[30]
则以下叙述不正确的是
A. std是一个含有30个元素的对象数组
B. std数组中的每个元素都是person类的对象
C. std数组中的每个元素都有自己的私有变量num和name
D. std数组中的每个元素都有各自的成员函数init
[单项选择]有如下类定义:
class XX{
int xdata;
public:
XX(int n=0) : xdata (n) { }
};
class YY : public XX{
int ydata;
public:
YY(int m=0, int n=0) : XX(m), ydata(n) { }
};
YY类的对象包含的数据成员的个数是
A. 1
B. 2
C. 3
D. 4
[单项选择]若类A和类B的定义如下: class A { int i,j; public: int geti ( ) { return i; } }; class B : public A { int k; public: void make ( ) { k=i*j; } }; 则上述定义中非法的语句是
A. k=i*j;
B. int k;
C. return i;
D. void make()