阅读量:0
在Swift中,运算符重载有以下限制:
- 不能重载赋值运算符(=)和三元条件运算符(?:)
- 不能定义新的运算符,只能重载已经存在的运算符
- 不能改变运算符的优先级和结合性
- 不能重载比较运算符(==、!=、<、>、<=、>=)来比较不同类型的操作数
- 不能重载用于逗号表达式(,)或条件判断的逻辑运算符(&&、||、!)
- 不能重载子脚本访问运算符(下标)
- 不能重载类型转换运算符(as、as?、as!)
- 不能重载用于强制解包的后缀运算符(!)
- 不能重载用于比较两个对象引用的恒等运算符(===、!==)