资源描述:
《运算符重载复习题.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、运算符重载复习题21、下列运算符中,()运算符在C++中不能重载。A=B()C::Ddelete2、下列运算符中,()运算符在C++中不能重载。A?:B[]CnewD&&3、下列关于C++运算符函数的返回类型的描述中,错误的是()。A可以是类类型B可以是int类型C可以是void类型D可以是float类型4、下列运算符不能用友元函数重载的是()。A+B=C*D<<5、在重载运算符函数时,下面()运算符必须重载为类成员函数形式。A+B-C++D->6、下列关于运算符重载的描述中,正确的是()。A运算符重载可以改变运算符的操作数的个数B运算符重载可以
2、改变优先级C运算符重载可以改变结合性D运算符重载不可以改变语法结构7、友元运算符obj>obj2被C++编译器解释为()。Aoperator>(obj1,obj2)B>(obj1,obj2)Cobj2.operator>(obj1)Dobj1.oprator>(obj2)8、在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。Aoperator+有两个参数,operator*有两个参数Boperator+有两个参数,operator*有一个参数Coperator+有一个参数,operator
3、*有两个参数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、双目运算符重载为普通函数时,其参数表中应带
4、有()个参数。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++中的"++"是作为普通
5、函数重载的运算符,若采用运算符函数调用格式,则可表示为()。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.重载时,
6、运算符的功能可以改变。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);"
7、和"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、下面是重载双目运算符+的普通函数原形,
8、其中最符合+原来含义的是()。A.Valueoperator+(Value,Value);B.Valueoperator+(Value,