计算机二级

下面是重载为非成员函数的运算符的函数原型,其中错误的是( )。A.Fraction operator+(Fraction,Fraction);B.Fraction operator一(Fraction);C.Fraction&operator=(Fraction&,Fraction);D.Fraction&operator+=(Fraction&,Fraction);

题目

下面是重载为非成员函数的运算符的函数原型,其中错误的是( )。

A.Fraction operator+(Fraction,Fraction);

B.Fraction operator一(Fraction);

C.Fraction&operator=(Fraction&,Fraction);

D.Fraction&operator+=(Fraction&,Fraction);

参考答案和解析
正确答案:C
本题考查四种运算符作为非成员函数的重载的使用方法,根据重载规则,本题答案为c,c项正确原型为:Fractionperator=(Fraction&)。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若以非成员函数形式,为类Bounce重载“!”运算符,其操作结果为一个bool型数据,则该运算符重载函数的原型是______。


正确答案:bool operator!(Bounee);
bool operator!(Bounee); 解析:单目运算符重载为非成员函数的一般格式为:
返回类型operator操作符(形参)
其中形参类型为类名。

第2题:

( 33 )下列关于运算符重载的描述中,错误的是

A ) :: 运算符不能重载

B )类型转换运算符只能作为成员函数重载

C )将运算符作为非成员函数重载时必须定义为友元

D )重载 [] 运算符应完成 “ 下标访问 ” 操作


正确答案:C

第3题:

下面是重载为非成员函数的运算符函数原型,其中错误的是

A . Fraction operator + (Fraction, Fraction);

B . Fraction operator - (Fraction);

C . Fraction& perator = (Fraction&, Fraction);

D . Fraction& operator += (Fraction&, Fraction);


正确答案:C

第4题:

下列关于运算符重载的描述中,错误的是( )。

A.可以通过运算符重载在C++中创建新的运算符

B.赋值运算符只能重载为成员函数

C.运算符函数重载为类的成员函数时,第一操作就是该类对象

D.重载类型转换运算符时不需要声明返回类型


正确答案:A
解析:运算符的重载是针对C++中原有运算符进行的,不能通过重载创造新的运算符。

第5题:

已知在一个类体中包含如下函数原型:VOLUME OPERATOR-(VOLUME)const;,下列关于这个函数的叙述中,错误的是( )。

A.这是运算符-的重载运算符函数

B.这个函数所重载的运算符是一个一元运算符

C.这是一个成员函数

D.这个函数不改变类的任何数据成员的值


正确答案:B
解析: 本题考核运算符的重载。题中语句为运算符“-”是一个二元运算符,且是作为常成员函数来重载的,所以它不能更新对象的数据成员,也不能调用该类中没有用const修饰的成员函数。

第6题:

( 14 )下列有关运算符函数的描述中,错误的是

A )运算符函数的名称总是以 operator 为前缀

B )运算符函数的参数可以是对象

C )运算符函数只能定义为类的成员函数

D )在表达式中使用重载的运算符相当于调用运算符重载函数


正确答案:C

第7题:

( 24 )下列关于运算符重载的描述中,错误的是

A )可以通过运算符重载在 C++ 中创建新的运算符

B )赋值运算符只能重载为成员函数

C )运算符函数重载为类的成员函数时,第一操作数是该类对象

D )重载类型转换运算符时不需要声明返回类型


正确答案:A

第8题:

若以非成员函数形式 , 为类 Bounce 重载 “ ! ” 运算符 , 其操作结果为一 bool 型数据 , 则该运算符重载函数的原型是 【 13 】 。


正确答案:

第9题:

下列是重载为非成员函数的运算符函数原型,其叶错误的是()。

A.Fraction operator+(Fraction,Fraction);

B.Fraction operator-(Fraction);

C.Fraction&operator=(Fraction&,Fraction);

D.Fraction&operator+=(Fraction&,Fraction);


正确答案:C
由于取负运算符″一″是一元运算符,当作为成员函数重载时参数表中没有参数,那个的操作数以this指针的形式隐藏在参数表中。

第10题:

将运算符“+”重载为非成员函数,下列原型声明中,错误的是( )。

A.MyClock operator+(MyClock,long);

B.MyClock operator+(MyClock,MyClock);

C.MyClock operator+(long,long);

D.MyClock operator+(long,MyClock);


正确答案:C
解析:首先非成员函数一般都是友元函数,相比成员函数第一个操作数是对象本身以this指针的形式隐含在参数列表中,非成员函数调用必须显性的列出参数;选项C中没有MyClock类型,故选C。

更多相关问题