类MyClas定义如下: Class MyClas{ public: MyClas(){value=0;} setVariable(int i){value=I;}

admin2009-01-15  38

问题 类MyClas定义如下:    Class MyClas{         public:              MyClas(){value=0;}              setVariable(int i){value=I;}         private:              int value;    }则以下对语句序列  MyClas *p,my;p=&my;  的描述正确的是(    )。

选项 A、语句  p->setVariable(5)  与语句  my.setVariable(5)  等价
B、对语句  *p.setVariable(5)的调用是正确的
C、语句  MyClas *p,my;  会调用两次类MyClas的构造函数
D、语句  p=&my;  是把对象my赋值给指针变量p

答案1

解析 选项A中,p是对象指针,所以调用p的成员要用符号“->”,而my是一般的类对象,所以调用my的成员用“.”;选项B中正确的调用方式应该是(*p).set Variable;选项C中仅调用一次类对象的构造函数;选项D是把对象my的地址赋值给指针变量p,而不是对象本身。
转载请注明原文地址:https://jikaoti.com/ti/JQd0FFFM
0

最新回复(0)