当一元运算符的操作数,或者二元运算符的左操作数是该类的一个对象时,重载运算符函数一般定义为()

题目
单选题
当一元运算符的操作数,或者二元运算符的左操作数是该类的一个对象时,重载运算符函数一般定义为()
A

构造函数

B

析构函数

C

成员函数

D

友元函数

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

( 24 )将运算符重载为类成员函数时,其参数表中没有参数,说明该运算是

A )不合法的运算符

B )一元运算符

C )无操作数的运算符

D )二元运算符


正确答案:B

第2题:

下列关于运行符重载的描述中,正确的是( )。

A.运算符重载可以改变操作数的个数

B.运算符重载可以改变操作数的优先级

C.运算符重载可以改变运算符的结合性

D.运算符重载可以使运算符实现特殊功能


正确答案:D
解析: C++把重载的运算符视为特殊的函数,称为运算符函数,函数名就是在运算符前加上保留字opera- tor。C++中通过重新定义运算符,使它能够用于特定类的对象执行特定的功能。但是用户重新定义运算特,不改变原运算符的操作符个数、优先级和结合性。同时运算符重载后,也不改变运算符的语法结构,即单目运算符只能重载为单目运算符,双目运算符只能重载为双目运算符。

第3题:

在重载一个运算符为成员函数时,其参数表中没有任何参数,这说明该运算符是

A.后缀一元运算符

B.前缀一元运算符

C.无操作数的运算符

D.二元运算符


正确答案:B

第4题:

下列关于运算符重载的叙述中,正确的是

A.通过运算符重载,可以定义新的运算符

B.有的运算符只能作为成员函数重载

C.若重载运算符+,则相应的运算符函数名是+

D.重载一个二元运算符时,必须声明两个形参


正确答案:B
解析:一般运算符重载可以采用成员函数方式或友元方式。但成员运算符(.),指向成员的指针,作用域运算符(::),条件运算符(?:)只能采用成员函数方式;重载运算符(+),对应的运算符函数名是operator+();重载一个二元运算符时,只需声明一个形参,左操作数毋须用参数输入,而是通过隐含的this指针传入。

第5题:

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

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

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

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

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


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

第6题:

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

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

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

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

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


正确答案:A

第7题:

按运算符的操作数的数目划分,可以分为一元运算符、二元运算符和三元运算符,其中三元运算符是【 】。


正确答案:?:
?: 解析:?:是Java中唯一的一个三元运算符。

第8题:

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

A )运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符

B )一元运算符只能作为成员函数重载

C )二元运算符重载为非成员函数时,参数表中有一个参数

D ) C++ 中可以重载所有的运算符


正确答案:A

第9题:

下面关于自定义类的运算符重载的说法中,正确的是()。

A.类友元形式重载的运算符,重载函数的参数个数与运算符的实际操作数个数相同

B.类友元形式重载的运算符,重载函数中的this指针指向第一个运算数

C.类友元形式重载的运算符,重载函数中可以直接访问类中的私有成员

D.所有运算符都可以以类友元形式进行重载


正确答案:AC

第10题:

按照运算符的操作数的数目划分,算术运算符++属于( )。

A.一元运算符

B.二元运算符

C.三元运算符

D.关系运算符


正确答案:A
解析:运算符++的操作数只有一个,可以在该运算符的左边,也可以在该运算符的右边,实现对操作数的增量运算。

更多相关问题