itgle.com
参考答案和解析
正确答案:B
解析: 在定义了重载运算符后的函数后,函数Operator+重载了运算符“+”。如果在类以外的其他地方定义了一个函数,在类体中用 friend对该函数进行声明,此函数就称为本类的友元函数。“*”用友元函数重载就是运算符函数不作为成员函数,而把它放在类外,“*”被改写为“operato*”。“+”为成员函数重载,x.operator+。所以x+y*2被改写为“x,operator+(operator *(y,z))”。
更多“将x+y*z中的“+”用成员函数重载,“*”是友元函数重载应写为()。A.operator+(operator*(y,z))B.x.oper ”相关问题
  • 第1题:

    如果表达式x * y+z中,“*”是作为友元函数重载的,“+”是作为成员函数重载的,则该表达式还可为

    A.operator+(operator * (x, y) ,Z)

    B.x. operator+(operator * (x, y) ,z)

    C.y. operator * (operator+(x, y) ,z)

    D.x. operator+(operator * (x, y) )


    正确答案:A
    解析:C++中用成员函数重载x * y为:x. operator * (y) ,用友元函数重载x * y为:operator
    * (x, y) ,用成员函数重载x+y为:x. operator+(y) ,用友元函数重载x+y为:operator+(x, y) 。

  • 第2题:

    如果表达式x*y+z中,“*”是作为友元函数重载的,“+”是作为友元函数重载的,则该表达式还可为

    A.operator+(operator*(x,y),z)

    B.x.operator+(operator*(x,y),Z)

    C.y.operator*(operator+(x,y),z)

    D.x.operator+(operator*(x,y))


    正确答案:A
    解析:C++中用成员函数重载x*y为:x.operator*(y),用友元函数重载x*y为:operator*(x,y),用成员函数重载x+y为:x.operator+(y),用友元函数重载x+y为:operator+(x,y)。

  • 第3题:

    在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符,则下列叙述中正确的是()。

    A.operator +有2个参数,operator *有2个参数

    B.operator +有2个参数,operator *有1个参数

    C.operator +有1个参数,operator *有2个参数

    D.operator +有1个参数,operator *有1个参数


    x=y.operator*(z)或x=y.operator*(z) x=y.operator*(z)或x=y.operator*(z) 解析:运算符函数有两种调用形式,第一种是像一般函数那样用函数名调用,即y.operator*(z)或者operator*(y,z);另一种是通过运算符构成表达式,即y*z。

  • 第4题:

    如果表达式x * y+z中,“*”是作为友元函数重载的,“+”是作为成员函数重载的,则该表达式还可为 ( )。

    A.operator+(operator$(X,Y),z)

    B.x.operator+(operator * (x,y),Z)

    C.Y.operator * (operator+(x,Y),z)

    D.x.operator+(operator{(X,Y))


    正确答案:A
    C++中用成员函数重载x*y为:x.oper-ator}(y),用友元函数重载x*Y为:(,perator*(x,Y),用成员函数重载x+Y为:x.operator+(Y),用友元函数重载x+Y为:operator+(x,Y)。

  • 第5题:

    如果表达式x*y+z中,\"*\"是作为友元函数重载的,\"+\"是作为友元函数重载的,则该表达式还可为

    A.operator+( operator*(x, y),z)
    B.x.operator+( operator*(x, y),z)
    C.y.operator*( operator+(x, y),z)
    D.x.operator+( operator*(x, y))

    答案:A
    解析:
    C++中用成员函数重载x*y为:x. operator*(y),用友元函数重载x*y为:operator*(x,y),用成员函数重载x+y为:x. operator+(y),用友元函数重载x+y为:operator+(x,y)。