4运算符重载复习题2

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

运算符重载复习题21、下列运算符中,()运算符在C++中不能重载。A=B()C::Ddelete2、下列运算符中,()运算符在C++中不能重载。A?:B[]CnewD&&3、下列关于C++运算符函数的返回类型的描述中,错误的是()。A可以是类类型B可以是int类型C可以是void类型D可以是float类型4、下列运算符不能用友元函数重载的是()。A+B=C*D5、在重载运算符函数时,下面()运算符必须重载为类成员函数形式。A+B-C++D-6、下列关于运算符重载的描述中,正确的是()。A运算符重载可以改变运算符的操作数的个数B运算符重载可以改变优先级C运算符重载可以改变结合性D运算符重载不可以改变语法结构7、友元运算符objobj2被C++编译器解释为()。Aoperator(obj1,obj2)B(obj1,obj2)Cobj2.operator(obj1)Dobj1.oprator(obj2)8、在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。Aoperator+有两个参数,operator*有两个参数Boperator+有两个参数,operator*有一个参数Coperator+有一个参数,operator*有两个参数Doperator+有一个参数,operator*有一个参数9、重载赋值操作符时,应声明为()函数。A友元B虚C成员D多态10、在一个类中可以对一个操作符进行()重载。A1种B2种以下C3种以下D多种11、在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是()。A.作为友元函数重载的1元运算符B.作为成员函数重载的1元运算符C.作为友元函数重载的2元运算符D.作为成员函数重载的2元运算符12、在成员函数中进行双目运算符重载时,其参数表中应带有()个参数。A.0B.1C.2D.313、双目运算符重载为普通函数时,其参数表中应带有()个参数。A.0B.1C.2D.314、如果表达式a+b中的+是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()。A.a.operator+(b)B.b.operator+(a)C.operator+(a,b)D.operator(a+b)15、如果表达式a==b中的==是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为()。A.a.operator==(b)B.b.operator==(a)C.operator==(a,b)D.operator==(b,a)16、如果表达式a++中的++是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为()。A.a.operator++()B.operator++(a)C.operator++(a,1)D.operator++(1,a)17、如果表达式++a中的++是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()。A.a.operator++(1)B.operator++(a)C.operator++(a,1)D.a.operator++()18、关于运算符重载,下列说法正确的是()。A.重载时,运算符的优先级可以改变。B.重载时,运算符的结合性可以改变。C.重载时,运算符的功能可以改变。D.重载时,运算符的操作数个数可以改变。19、关于运算符重载,下列说法正确的是()。A.所有的运算符都可以重载。B.通过重载,可以使运算符应用于自定义的数据类型。C.通过重载,可以创造原来没有的运算符。D.通过重载,可以改变运算符的优先级。20、一个程序中数组a和变量k定义为inta[5][10],k;,且程序中包含有语句a(2,5)=++k*3;,则此语句中肯定属于重载操作符的是()。A.()B.=C.++D.*21、假定K是一个类名,并有定义Kk;intj;,已知K中重载了操作符(),且语句j=k(3);和k(5)=99;都能顺利执行,说明该操作符函数的原形只可能是()。A.Koperator()(int);B.intoperator()(int);C.int&operator()(int);D.Koperator()(int);22、假定M是一个类名,且M中重载了操作符=,可以实现M对象间的连续赋值,如m1=m2=m3;。重载操作符=的函数原型最好是()。A.intoperaotor=(M);B.intoperator=(M);C.Moperator=(M);D.M&operator=(M);23、下面是重载双目运算符+的普通函数原形,其中最符合+原来含义的是()。A.Valueoperator+(Value,Value);B.Valueoperator+(Value,int);C.Valueoperator+(Value);D.Valueoperator+(int,Value);24、下面是重载双目运算符-的成员函数原形,其中最符合-原来含义的是()。A.ValueValue::operator-(Value);B.ValueValue::operator-(int);C.ValueValue::operator-(Value,int);D.ValueValue::operator-(int,Value);25、在重载一运算符时,若运算符函数的形参表中没有参数,则不可能的情况是()。A.该运算符是一个单目运算符。B.该运算符函数有一个隐含的参数this。C.该运算符函数是类的成员函数。D.该运算符函数是类的友元函数。26、关于插入运算符的重载,下列说法不正确的是()。A.运算符函数的返回值类型是ostream。B.重载的运算符必须定义为类的成员函数。C.运算符函数的第一个参数的类型是ostream。D.运算符函数有两个参数。

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功