运算符重载 成员函数形式与友元函数形式的比较

友元函数成员函数运算符重载

功能上没有区别,有时将二元运算符重载成友元函数比成员函数更里灵活,例如:

c2(复数)等于1(int)+c1(复数)

c2 = 1 + c1;

如果用“+”成员函数重载,编译会报错

编译器会将右边式子解释为

1.operator + (c2);

1是int型数据不能进行“.”操作,用友元函数重载就不会出现这个问题

operator + (1,c1)

猜你喜欢

转载自www.cnblogs.com/Waker-WH/p/10959177.html
今日推荐