1. 运算符重载限制
- 重载后的运算符必须至少有一个操作数是用户自定义的类型
- 使用运算符时不能违反运算符原来的句法规则,也不能修改运算符的优先级。
2. 不能进行重载的运算符
sizeof
: sizeof运算符.
: 成员运算符.*
: 作用域解析运算符?:
: 条件运算符typeid
: 一个RTTI运算符const_cast
: 强制类型转换运算符dynamic_cast
: 强制类型转换运算符static_cast
: 强制类型转换运算符reinterpret_cast
: 强制类型转换运算符
3. 只能通过成员函数进行重载
=
: 赋值运算符()
: 函数调用运算符[]
: 下标运算符->
: 通过指针访问类成员的运算符