问题
单项选择题
如果表达式- -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选项。