下面重载乘法运算符的函数原型声明中错误的是( )。

题目

下面重载乘法运算符的函数原型声明中错误的是( )。

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

第1题:

下列是重载乘法运算符的函数原型声明,其中错误的是 ()。

A.MyClass operator*(double, double) ;

B.MyClass operator*(double, MyClass);

C.MyClass operator*(MyClass,double);

D.MyClass operator*(MyClass, MyClass);


A

第2题:

下列是重载乘法运算符的函数原型声明,其中错误的是()。

A.MyClass operator*(double, double);

B.MyClass operator*(double, MyClass);

C.MyClass operator*(MyClass,double);

D.MyClass operator*(MyClass, MyClass);


A

第3题:

34、下列是重载乘法运算符的函数原型声明,其中错误的是()。

A.MyClassoperator*(double,double);

B.MyClassoperator*(double,MyClass);

C.MyClassoperator*(MyClass,double);

D.MyClassoperator*(MyClass,MyClass);


MyClassoperator*(double,double);

第4题:

下列是重载乘法运算符的函数原型声明,其中错误的是( )。

A.MyClass operator*(double,double);

B.MyClass operator*(double,MyClass);

C.MyClass operator*(MyClass,double);

D.MyClass operator*(MyClass,MyClass);


正确答案:A
解析:此题考查的是乘法运算符的重载函数原型声明。因为操作的对象是类对象,所以重载函数的参数至少有一个是类对象。故选项A)中两个参数都为double型是错误的。

第5题:

下列是重载乘法运算符的函数原型声明,其中错误的是 ( )。

A.MyClass operator * (double, double);

B.MyClass operator * (double, MyClass);

C.MyClass operator * (MyClass, double);

D.MyClass operator * (MyClass, MyClass);


正确答案:A

第6题:

下面重载乘法运算符的函数原型声明中错误的是( )

A.TestClass operator *(MyClass,double);

B.TestClass operator *(double,MyClass);

C.TestClass operator *(double,double);

D.TestClass operator *(MyClass,MyClass);


正确答案:C

第7题:

下列是重载乘法运算的函数原型声明,其中错误的是

A.MyClass operator*(double,double);

B.MyClass operator*(double,MyClass);

C.MyClass operator*(MyClass,double);

D.MyClass operator*(MyClass,MyClass);


正确答案:A

第8题:

下列是重载乘法运算符的函数原型声明,其中错误的是

A.MyClass operator * (double, double);

B.MyClass operator * (double, MyClass);

C.MyClass operator * (MyClass, double);

D.MyClass operator * (MyClass, MyClass);


正确答案:A
解析:本题考查的知识点是:运算符重载。C++把重载的运算符视为特殊的函数,称为运算符函数。运算符重载就是函数重载的一种特殊情况。像对待一般重载函数一样,编译系统能够依据使用运算符的不同环境,即参数(操作数)的数量或类型的差异,区分同一运算符的不同含义。本题中的选项A重载运算符“*”使用的形参是两个double,而系统中的“*”运算原本就能计算两个double,所以这违反了重载函数的原则,当执行a*b(a、b的类型均为double)这样的表达式时,系统不知道该执行默认的“乘法”还是用户自定义的运算符重载函数。故答案为选项A。

第9题:

( 33 )下列是重载乘法运算符的函数原型声明,其中错误的是

A ) MyClass operator*(double,double);

B ) MyClass operator*(double,MyClass);

C ) MyClass operator*(MyClass,double);

D ) MyClass operator*(MyClass,MyClass);


正确答案:A