问题
单项选择题
如果表达式x*y+z中,"*"是作为友元函数重载的,"+"是作为友元函数重载的,则该表达式还可为()。
A.operator+(operator*(x, y),z)
B.operator+(operator*(x, y),z)
C.operator*(operator+(x, y),z)
D.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)。