更多"已知类A有公用数据成员a,并重载了=运算符,且有A obj2;cons"的相关试题:
[单项选择]已知类A有公用数据成员a,并重载了“=”运算符,且有A obj2;const A*ptr new A;则下列语句错误的是( )。
A. ptr->a=100;
B. ptr=&obj2;
C. ptr++;
D. obj2=*ptr;
[单项选择]已知类A有公用数据成员a,并重载了=运算符,且有A obj2;const A * ptr= new A;则下列语句错误的是
A. ptr->a=100;
B. ptr=&obj2;
C. ptr++;
D. obj2=*ptr;
[单项选择]已知类A有公用数据成员a,且有A obj2;A * const ptr=new A;则下列语句正确的是
A. ptr->a=100;
B. ptr=&obj2;
C. ptr++;
D. ptr=obj2;
[单项选择]已知类A有公用数据成员a,且有A obj2;A*const ptr=new A;则下列语句正确的是
A. ptr->a=100;
B. ptr=&obj2;
C. ptr++;
D. ptr=obj2;
[单项选择]已知类X成功地重载了- -、+、=、[ ]这几个运算符。则其中肯定属于成员函数的运算符是:
A. 前置- -和[ ]
B. =和[ ]
C. [ ]和后置- -
D. +和=
[单项选择]已知类X成功地重载了- -、=、+、和[]这几个运算符,则其中肯定属于成员函数的运算符是( )。
A. +和=
B. []和后置--
C. =和[]
D. 前置- -和[]
[单项选择]
B
解析:赋值运算符分为赋值运算符(=)和扩展运算符。其中“=”赋值运算符必须满足在赋值运算符的左边是一变量,右边是一表达式;扩展运算符是在赋值运算符“=”前加上其他运算符,如:+ =,*=,%=等,特殊的一个表达式是++和--,如选项B) ++i;中的意思是i=i+1;它其实是个合法的赋值语句。选项A) a= =1和选项D) !(+ +a!=b--)都是布尔逻辑表达式,不属于赋值表达式的范畴。
[单项选择]已知类A中有公用数据成员B*b;其中B为类名。则下列语句错误的是
A. A( ):d(new {}
B. A(const A &o:d(newr B){*d=*od;}
C. ~A({}
D. ~A( ){delete d;}
[单项选择]下列运算符中属于关系运算符的是
A. ==
B. =
C. +=
D. -=