itgle.com

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

题目

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

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

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

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

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


相似考题
更多“类MyClass的定义如下:class MyClass{public:MyClass(){value=0;}SetVariable(int i){value=i;}pr ”相关问题
  • 第1题:

    类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进行赋值即可。

  • 第2题:

    类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

  • 第3题:

    类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)正确。

  • 第4题:

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

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

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

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

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


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

  • 第5题:

    类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