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

admin2017-10-17  31

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

选项 A、有的运算符可以作为非成员函数重载
B、所有的运算符都可以通过重载而被赋予新的含义
C、不得为重载的运算符函数的参数设置默认值
D、有的运算符只能作为成员函数重载

答案B

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

最新回复(0)