c++运算符定义为成员函数还是非成员函数

=,[],->,()运算符必须是成员,赋值,下标,箭头访问,调用;

复合赋值运算符一般应该是成员;

改变对象状态的运算符或与给定类型密切相关的运算符例如递增减,解引用应该是成员;

具有对称性的运算符可能转换任意一端的运算对象,例如==,算术相等性关系,位运算等等

**当把运算符定义为成员函数时,左侧必须是运算符所属类的一个对象

 

posted on 2018-04-20 14:25  CreatorKou  阅读(1127)  评论(0编辑  收藏  举报

导航