问题 单项选择题

如果表达式- -x/y中的“- -”和“/”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可以表示为

A.operator /(x.operator- -( ),y);

B.operator /(operator- -(x),y);

C.operator- -( ).Operator /(y);

D.operator /(operator- -(x));

答案

参考答案:B

解析: 本题考核运算符的重载。假定已经作为某个类的成员函数重载了二元运算符+,且 c1、c2都是该类的对象,则c1.operator+(c2)与c1+c2含义相同。如果+作为该类的非成员函数重载,则operator+(cl,c2)与c1+c2含义相同。同理,运算符“/”作为友元函数重载,则(- -x)/y与表达式operator/((- -x),y)相同。前缀运算符“- -”作为友元函数重载,则- -x与operator- -(x)相同,所以组合起来是operator/(operator- -(x),y);,即B选项。

单项选择题
单项选择题 A1型题