-
在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。
A、operator+有两个参数,operator*有两个参数
B、operator+有两个参数,operator*有一个参数
C、operator+有一个参数,operator*有两个参数
D、operator+有一个参数,operator*有一个参数
-
对每个可重载的运算符来说,只能重载为友元函数。
A . 正确
B . 错误
-
函数的参数个数和类型都相同,只是返回值不同,这不是重载函数。
A . 正确
B . 错误
-
能否利用返回值对函数进行重载()。
A . 不行,因为Java并未明确要求函数的返回值必须赋给变量
B . 可以,因为返回值也是函数的重要组成部分
C . 可以,但要求一个函数有返回值,另一个函数没有返回值
D . 不行,Java系统无法区分仅返回值不同的函数,编译时会报错
E . 可以,但仅能用于返回值为简单变量的情况
-
将运算符“+”函数重载为类的成员函数,交换律不适用。()
是
否
-
如果表达式y*x++中,“*”是作为成员函数重载的运算符,“++”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为
A.x.operator++(0).operator*(y);
B.operator*(x.operator++(0),y);
C.y.operator*(operator++(x,0))
D.operator*(operator++(x,0),y)
-
下列是重载为非成员函数的运算符函数原型,其叶错误的是()。A.Fraction operator+(Fraction,Fracti
下列是重载为非成员函数的运算符函数原型,其叶错误的是()。
A.Fraction operator+(Fraction,Fraction);
B.Fraction operator-(Fraction);
C.Fraction&operator=(Fraction&,Fraction);
D.Fraction&operator+=(Fraction&,Fraction);
-
C++在重载运算将中,如用成员函数重载一元运算符参数表中需要______个参数,如用友元函数重载一元运算符参数表中需要______个参数。
-
在表达式x+y*z中,+作为成员函数重载的运算符,*作为友元函数重载的运算符,以下叙述中正确的是()
A.operator+有2个参数,operator*有2个参数
B.operator+有2个参数,operator*有1个参数
C.operator+有1个参数,operator*有2个参数
D.operator+有1个参数,operator*有1个参数
-
重载输入流运算符>>必须使用的原型为()。A.istream& operator>>(istream&,<类名>&);B
重载输入流运算符>>必须使用的原型为()。
A.istream& operator>>(istream&,<类名>&);
B.istream& operator>>(istream,<类名>);
C.istream operator>>(istream,<类名>&);
D.<类名>operator>>(istream&,<类名>&);
-
一个双目运算符作为类的成员函数重载时,重载函数的参数表中有【】个参数。
一个双目运算符作为类的成员函数重载时,重载函数的参数表中有【 】个参数。
-
以下类中说明了“++”运算符重载函数的原型。 class TA { public: .. .. .. friend TA operator ++(TA &); }; 编译器把表达式”++d”解释为:()。
A.d.operator++()
B.d.operator++(d)
C.operator++()
D.operator++(d)
-
如果表达式a+b中的“+”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()。
A.a.operator+()
B.b.operator+()
C.operator+(a,b)
D.operator(a+b)
-
在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是
A.operator+有两个参数,operator*有两个参数
B.operator+有两个参数,operator*有一个参数
C.operator+有一个参数,operator*有两个参数
D.operator+有一个参数,operator*有一个参数
-
重载输入流运算符<<必须使用的原型为()。A.ostream& operator>>(ostream&,<类名>);B.istr
重载输入流运算符<<必须使用的原型为()。
A.ostream& operator>>(ostream&,<类名>);
B.istream& operator>>(istream&,<类名>&);
C.ostream operator>>(ostream,<类名>&);
D.<类名>operator>>(istream &,<类名>&);
-
【简答题】定义一个复数类,重载“-=”运算符,使这个运算符能直接完成复数的“-=”运算。⑴分别用成员函数与友元函数编写运算符重载函数;⑵在主函数中定义复数对象 c1(10,20)、c2(15,30),进行 c2-=c1 的复数运算,并输出 c1、c2 的复数值。
-
假定M是一个类名,且M中重载了操作符=,可以实现M对象间的连续赋值,如“m1=m2=m3;”。重载操作符=的函数原型最好是()。
A.int operaotor=(M);
B.int operator=(M&);
C.M operator=(M&);
D.M& operator=(M);
-
在你自己定义的类中如果要重载流插入运算符 << ,你必须将该运算符重载为类的友元函数,而不是成员函数,否则就会出现非常奇怪的使用方式。
-
如果表达式++a中的“++”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()
A.operator++(1)
B.operator++(a)
C.operator++(a,1)
D.a.operator++()
-
下列重载为非成员函数的运算符函数原型中,错误的____()
A.Fraction operator -(Fraction)
B.Fraction& operator =(Fraction&, Fraction)
C.Fraction& operator +=(Fraction&, Fraction)
D.Fraction operator +(Fraction, Fraction)
-
4、多数运算符可以重载,个别运算符不能,运算符重载是通过函数定义实现的。
-
276、函数的参数个数和类型都相同,只是返回值不同,这不是重载函数。
-
53、对于+=(或=)运算符,重载函数的返回值为void类型或本类类型对象的区别是:()
A.void类型,本类对象可连续赋值。
B.本类类型,则本类对象可以连续赋值.
C.void类型,本类类型都可以连续赋值
D.void类型,本类类型都不可以连续赋值
-
3、函数的参数个数和类型都相同,只是返回值不同,这不是重载函数。