在Swift中定义属于自己的运算符

precedencegroup ChainingPrecedence {

associativity: left

higherThan: TernaryPrecedence

}

 

infix operator >>- : ChainingPrecedence

重点在这:

postfix operator ~~{}

我们这个声明有一个修饰:postfix,就是他!

  • 左:prefix
  • 右:postfix
  • 中:infix

下面奉上Swift中一些运算符的声明:

infix operator += {
    associativity right //结合性,右结合
    precedence 90       //优先级,90
}

infix operator * {
    associativity left
    precedence 150
}

infix operator - {
    associativity left
    precedence 140
}

infix operator + {
    associativity left
    precedence 140
}

忘了说了!Swift 2.2中废弃了 ++--这种运算符,改为+= 1-= 1

associativity(结合性):

  • left
  • right
  • none 默认

** precedence(优先级):**

  • 0~255 可选范围
  • 100 默认


作者:iLakeYC
链接:https://www.jianshu.com/p/b3d7536b3858
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
posted @ 2018-09-17 11:08  zzfx  阅读(161)  评论(0)    收藏  举报