这是二元重载中的成员函数重载:
在成员函数重载中。记住:左侧的操作数是调用对象。比如:
A=B*2 ->A=B.operator*(2)
但是如果编程 A=2*B,我们知道这两者从逻辑上是相等的。但2不是调用对象,因此编译器不能使用成员函数调用替换该表达式。
所以有时候友元函数在这方面会更人性化。
友元重载:
这是二元重载中的成员函数重载:
在成员函数重载中。记住:左侧的操作数是调用对象。比如:
A=B*2 ->A=B.operator*(2)
但是如果编程 A=2*B,我们知道这两者从逻辑上是相等的。但2不是调用对象,因此编译器不能使用成员函数调用替换该表达式。
所以有时候友元函数在这方面会更人性化。
友元重载: