类MyClass的定义如下:class MyClass{public:MyClass(){}MyClass(int i){value=new int(i);}int *

题目

类MyClass的定义如下: class MyClass { public: MyClass(){} MyClass(int i) { value=new int(i); } int *value; }; 若要对类中的value赋值,则下面的语句中,正确的是( )。

A.MyClass my;my.value=10;

B.MyClass my;*my,value=10;

C.MyClass my;my.*value=10;

D.MyClass my(10);

参考答案和解析
正确答案:D
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

如果定义了一个类myclass,则为myclass类对象以成员函数形式重载后置++运算符的声明应该为()。

A.myclass operator++();

B.myclass &operator++();

C.myclass operator++(int);

D.myclass &operator++(int);


myclass operator++(int);

第2题:

类MyClass的定义如下: class MyClass { public: MyClass( ){value=0;} SetVariable(int i){value=i;} private: int value; }; 则对下列语句序列正确的描述是( )。 MyClass*P, my; p=&my;

A.语句p=&my; 是把对象my赋值给指针变量P

B.语句MyClass*p, my; 会调用两次类MyClass的构造函数

C.对语句*P. SetVariable(5)的调用是正确的

D.语句p->SetVariable(5)与语句my.SetVariable(5)等价


正确答案:D
解析:选项A),语句p=&my;是把对象my的地址值赋值给指针变量P;选项B),语句MyClass*p,my;,由于p只是一个指向对象的指针,因此定义指针p不调用构造函数,所以此语句只调用一次构造函数;对成员函数的引用可以通过两种形式:指针->成员函数(形参表)或者对象名.成语函数名(形参表),故选项C)错误,选项D)正确。

第3题:

类MyClass的定义如下: class MyClass { public: MyClass(){} MyClass(int i){value=new int(i);} int*value; }; 若要对value赋值,则下面语句正确的是( )。

A.MyClass my;my.value=10;

B.MyClass my;*my.value=10;

C.MyClass my;my.*value=10;

D.MyClass my(10);


正确答案:D

第4题:

下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该类的实现。

class Myclass {

public:

Myclass(int num);

~ Myclass( );

public:

int *p;

};

Myclass: :Myclass( int hum) {

【 】

Myclass:: ~ Myelass( ) {

【 】;

}。


正确答案:P=new int(a)、delete P
P=new int(a)、delete P 解析:new和delete的用法。

第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);


正确答案:D
D。【解析】因题目中定义的指针value是指淘变量i的,所以直接利用语句MyClass(inti){value=newint(i);}对value进行赋值即可。

第6题:

类MyClass的定义如下: class MyClass { public: MyClass(){value=0;} SetVariable(int i){value=i;) private: int value; }; 则对下列语句序列正确的描述是( )。

A.MyClass*p,my;p=&my;

B.语句p=&my;是把对象my赋值给指针变量p

C.语句MyClass*p,my;会调用两次类MyClass的构造函数

D.对语句*p.SetV ariable(5)与语句my.SetVariable(5)等价


正确答案:D

第7题:

类MyClass的定义如下: class MyClass { public: MyClass(){value=0;} SetVariable(int i){value=i} private: int value; }; 则对下列语句序列正确的描述是( )。 MyClass*P,my;p=&my;

A.语句p=&my;是把对象my赋值给指针变量P

B.语句MyClass*p,my;会调用两次类MyClass的构造函数

C.对语句*P.SetVariabte(5)的调用是正确的

D.语句p->SetVariable(5)与语句my.SetVariable(5)等价


正确答案:D
解析: 语句p=&my,是把对象my的地址值赋值给指针变量P;语句MyClass*p,my;,由于p只是一个指向对象的指针,因此定义指针p不调用构造函数,所以此语句只调用一次构造函数;讨成员函数的引用可以通过两种形式:指针->成员函数(形参表)或者对象名、成语函数名(形参表)。

第8题:

类MyClass的定义如下,若要对value赋值,则下面语句正确的是( )。 class MyClass { public: MyClass(){} MyClass(int i){value=new int(i);} int*value; };

A.MyClass my;my.value=10;

B.MyClass my;*my.value=10;

C.MyClass my;my.*value=10;

D.MyClass my(10);


正确答案:D
解析:因题目中定义的指针value是指向变量i的,所以直接利用语句MyClass(int i){value=new int (i);}对Value进行赋值即可。

第9题:

类MyClass的定如下,若要对value赋值,则下面语句正确的是( )。 class MyClass { public: MyClass(){} MyClass(int i){value=new int(i);} int*value; };

A.MyClass my;my.value=10;

B.MyClass my;*my.value=10;

C.MyClass my;my.*value=10;

D.MyClass my(10);


正确答案:D
解析: 因题目中定义的指针value是指向变量i的,所以直接利用语句MyClass(int i){value=new int(i);}对 value进行赋值即可。