重载操作符是具有特殊名称的函数:保留字operator后接需定义的操作符符号。
重载操作符的形参数目(包括成员函数的隐式this指针)与操作符的操作数数目相同。函数调用操作符则可以接受任意数目的操作数。
重载操作符设计原则:
1、不要重载具有内置含义的操作符
(1)合成赋值操作符(2)取地址操作符(3)逗号操作符(4)内置逻辑与(&&)内置逻辑或(||)
2、选择成员或非成员实现
成员:
(1)赋值、下标、调用、成员访问箭头 等操作符
(2)复合赋值操作符
(3)改变对象状态或与给定类型紧密联系的,如自增、自减和 解引用(*)
非成员:
对称的操作符 如算术操作符,相等操作符,关系操作符和位操作符。