单选题在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是( )。Aoperator+有两个参数,operator*有两个参数Boperator+有两个参数,operator*有一个参数Coperator+有一个参数,operator*有两个参数Doperator+有一个参数,operator*有一个参数
单选题
在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是( )。
A
operator+有两个参数,operator*有两个参数
B
operator+有两个参数,operator*有一个参数
C
operator+有一个参数,operator*有两个参数
D
operator+有一个参数,operator*有一个参数
参考解析
解析:
运算符可重载为成员函数,也可重载为非成员函数函数。当重载为成员函数时,运算符重载函数的形参个数要比运算符操作数的个数少一个;当重载为非成员函数时,其形参个数应与操作数的个数相同。
运算符可重载为成员函数,也可重载为非成员函数函数。当重载为成员函数时,运算符重载函数的形参个数要比运算符操作数的个数少一个;当重载为非成员函数时,其形参个数应与操作数的个数相同。
相关考题:
下列关于运算符重载的叙述中,错误的是( )。A.有的运算符可以作为非成员函数重载B.所有的运算符都可以通过重载而被赋予新的含义C.不得为重载的运算符函数的参数设置默认值D.有的运算符只能作为成员函数重载
( 24 )下列关于运算符重载的描述中,正确的是A )运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符B )一元运算符只能作为成员函数重载C )二元运算符重载为非成员函数时,参数表中有一个参数D ) C++ 中可以重载所有的运算符
( 33 )下列关于运算符重载的描述中,错误的是A ) :: 运算符不能重载B )类型转换运算符只能作为成员函数重载C )将运算符作为非成员函数重载时必须定义为友元D )重载 [] 运算符应完成 “ 下标访问 ” 操作
( 24 )下列关于运算符重载的描述中,错误的是A )可以通过运算符重载在 C++ 中创建新的运算符B )赋值运算符只能重载为成员函数C )运算符函数重载为类的成员函数时,第一操作数是该类对象D )重载类型转换运算符时不需要声明返回类型
下列有关运算符重载的叙述中,正确的是A.运算符重载是多态性的一种表现B.C++中可以通过运算符重载创造新的运算符C.C++中所有运算符都可以作为非成员函数重载D.重载运算符时可以改变其结合性
下列关于运算符重载的描述中,错误的是( )。A.可以通过运算符重载在C++中创建新的运算符B.赋值运算符只能重载为成员函数C.运算符函数重载为类的成员函数时,第一操作就是该类对象D.重载类型转换运算符时不需要声明返回类型
在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是()。A、作为友元函数重载的1元运算符B、作为成员函数重载的1元运算符C、作为友元函数重载的2元运算符D、作为成员函数重载的2元运算符
下列关于运算符重载的描述中,错误的是( )。A.可以通过运算符重载在C++中创建新的运算符 下列关于运算符重载的描述中,错误的是( )。A.可以通过运算符重载在C++中创建新的运算符B.赋值运算符只能重载为成员函数C.运算符函数重载为类的成员函数时,第一操作参数就是该类对象D.重载类型转换运算符时不需要声明返回类型
运算符函数调用格式的表达式:y/x++与表达式:y.operator/(operator++(x,O))含义相同,由此可看出()。A.“/”和“++”都是作为成员函数重载的B.“/”和“++”都是作为非成员函数重载的C.“/”是作为成员函数重载的,“++”是作为非成员函数重载的D.“/”是作为非成员函数重载的,“++”都是作为成员函数重载的
下列关于运算符重载的叙述中,正确的是A.通过运算符重载,可以定义新的运算符B.有的运算符只能作为成员函数重载C.若重载运算符+,则相应的运算符函数名是+D.重载一个二元运算符时,必须声明两个形参
在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员的函数重载的运算符。下列叙述中正确的是A.operator+有两个参数,operator*有两个参数B.operator+有两个参数,operator*有一个参数C.operator+有一个参数,operator*有两个参数D.operator+有一个参数,operator*有一个参数
下列关于运算符重载的叙述中,正确的是A.运算符重载为成员函数时,若参数表中无参数,则重载的是一元运算符B.一元运算符只能作为成员函数重载C.二元运算符重载为非成员函数时,参数表中有一个参数D.C++中可以重载所有的运算符
下面关于成员函数重载运算符和友元函数重载运算符相同的是( )。A.成员函数和友元函数可重载的运算符是不相同的B.成员函数和友元函数重载运算符时都需要用到this指针C.成员函数和友元函数重载运算符时都需要声明为公有的D.成员函数和友元函数重载运算符时的参数可能是相同的
下面关于运算符重载的描述中,正确的是( )。A.一元运算符只能作为成员函数来重载B.运算符重载作为成员函数时,如果参数表中无参数,重载的是一元运算符C.二元运算符重载为非成员函数时,参数表中有一个参数D.C++中可以重载所有的运算符
在表达式x+ y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是( )。A.operator+有两个参数,operator*有两个参数B.operator+有两个参数,operator*有一个参数C.operator+有一个参数,operator*有两个参数D.operator+有一个参数,operator*有一个参数
下理关于运算符重载的描述中,正确的是( )。A.运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符B.一元运算符只能作为成员函数重载C.二元运算符重载为非成员函数时,参数表中有一个参数D.C++中可以重载所有的运算符
在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。A、operator+有两个参数,operator*有两个参数B、operator+有两个参数,operator*有一个参数C、operator+有一个参数,operator*有两个参数D、operator+有一个参数,operator*有一个参数
单选题在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。Aoperator+有两个参数,operator*有两个参数Boperator+有两个参数,operator*有一个参数Coperator+有一个参数,operator*有两个参数Doperator+有一个参数,operator*有一个参数
单选题下列关于运算符重载的描述中,错误的是( )。A可以通过运算符重载在C++中创建新的运算符B赋值运算符只能重载为成员函数C运算符函数重载为类的成员函数时,第一操作数是该类对象D重载类型转换运算符时不需要声明返回类型
单选题在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是()。A作为友元函数重载的1元运算符B作为成员函数重载的1元运算符C作为友元函数重载的2元运算符D作为成员函数重载的2元运算符
单选题运算符函数调用格式的表达式“y/x抖”与表达式“y.operator/(operator++(x,o))”的含义相同,由此可看出( )A“/”和“++”都是作为成员函数重载的B“/”和“++”都是作为非成员函数重载的C“/”是作为成员函数重载的,“++”是作为非成员函数重载的D“/”是作为非成员函数重载的,“++”都是作为成员函数重载的
单选题下列关于赋值运算符“=”重载的叙述中,正确的是( )。A赋值运算符只能作为类的成员函数重载B默认的赋值运算符实现了“深层复制”功能C重载的赋值运算符函数有两个本类对象作为形参D如果已经定义了复制(拷贝)构造函数,就不能重载赋值运算符
单选题如果表达式y*x++中,“*”是作为成员函数重载的运算符,“++”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为( )。Ax.operator++(0).operator*(y)Boperator*(x.operator++(0),y)Cy.operator*(operator++(x,0))Doperator*(operator++(x,0),y)