问题 单项选择题

下列运算符中全都可以被友元函数重载的是( )。

A.=,+,-,\

B.[],+,(),new

C.->,+,*,>>

D.<<,>>,+,*

答案

参考答案:D

解析:
运算符重载为成员函数的形式:函数类型operator运算符(形参表){函数体;};运算符重载为友元函数的形式:friend函数类型operator运算符(形参表){函数体;}。一般来讲,单目运算符最好重为成员函数,双目运算符最好重载为友元函数。=、[]、()、->以及所有的类型转换运算符只能作为成员函数重载。

选择题
问答题 简答题