C++语言程序设计

单选题下列关于函数重载的叙述中,错误的是(  )。A 重载函数的参数个数可以不同B 重载函数的参数类型可以不同C 重载函数的返回值类型必须不同D 重载函数的参数个数或参数类型必须有所不同

题目
单选题
下列关于函数重载的叙述中,错误的是(  )。
A

重载函数的参数个数可以不同

B

重载函数的参数类型可以不同

C

重载函数的返回值类型必须不同

D

重载函数的参数个数或参数类型必须有所不同

参考答案和解析
正确答案: D
解析:
函数重载是指两个或两个以上的函数,具有相同的函数名,但是形参的个数或者类型不同,编译器根据实参和形参的类型及个数进行最佳匹配,自动确定调用哪个函数。重载函数对返回值类型不做要求,返回值类型也不参与区分函数的重载形式。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

A ) :: 运算符不能重载

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

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

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


正确答案:C

第2题:

关于函数重载,下列叙述中错误的是

A.重载函数的函数名必须相同。

B.重载函数必须在参数个数或类型上有所不同。

C.重载函数的返回值类型必须相同。

D.重载函数的函数体可以有所不同。


正确答案:C
解析:本题考查的知识点是:函数重载。在C++语言中,允许定义一系列函数名相同,但形参的个数或类型不完全相同函数。这种定义就叫做函数的重载。重载函数对返回值类型不作要求,返回值类型也不参与区分函数的重载形式。故本题应该选择C。

第3题:

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

A.有的运算符可以作为非成员函数重载

B.所有的运算符都可以通过重载而被赋予新的含义

C.不得为重载的运算符函数的参数设置默认值

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


正确答案:B
解析:此题考查的是运算符的重载。C++中运算符重载是多态性的一种表现,在C++语言中,“.”、“.*”、“->”、“::”、“?:”这5个运算符不能重载,所以选项B)错误。由于很多符号是一元运算符和二元运算符公用的,为了避免含混,不得为重载的运算符函数设置默认值,调用时也就不得省略实参。其中“=”、“[]”、“->”及所有的类型转换运算符只能作为成员函数重载:如果允许第一操作数不是同类对象,而是其他数据类型,则只能作为非成员函数重载。

第4题:

下列关于运算符重载的描述中,错误的是( )。A.可以通过运算符重载在C++中创建新的运算符

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

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

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

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

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


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

第5题:

下列关于虚函数与函数重载区别的叙述中不正确的是( )。

A.函数说明形式上不同

B.函数重载允许是非成员函数,虚函数只能是成员函数

C.函数重载的调用依据参数和类型的差别,虚函数则依据对象

D.函数重载的本体可以在类外定义,虚函数不可以


正确答案:D
解析: A项,B项,C项均为虚函数与函数重载的不同之处。但有一点它们是相同的:在类内外定义均可。故 D项错误。

第6题:

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

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

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

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

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


正确答案:A

第7题:

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

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

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

C.这是一个成员函数

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


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

第8题:

( 21 )关于函数重载,下列叙述中错误的是

A )重载函数的函数名必须相同

B )重载函数必须在参数个数或类型上有所不同

C )重载函数的返回值类型必须相同

D )重载函数的函数体可以有所不同


正确答案:C

第9题:

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

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

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

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

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


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

第10题:

下列对重载函数的描述中,错误的是( )。

A.重载函数中不允许使用默认参数

B.重载函数中编译是根据参数表进行选择的

C.不要使用重载函数来描述毫不相干的函数

D.构造函数重载将会给初始化带来多种方式


正确答案:A
解析: 选项A中,重载函数中最允许使用默认参数的;为了使重载函数有意义,不要使用重载函数来描述毫不相干的函数;重载函数中编译是根据参数表进行选择的,包括参数的个数和类型。

更多相关问题