是否& /和&%从Swift语言中删除了?

时间:2015-12-27 18:41:22

标签: swift swift2 operators

是否已从Swift 2.0中移除&/&%或更改了语法?

以下似乎在Swift 1.2中有效:

var divByZero: Int8 = 100 &/ aZero
var remainderDivByZero: Int8 = 100 &% aZero

来自learn-swift playground

我查看了语言指南Advanced Operations部分,但我没有看到任何对这些操作的引用。我似乎无法找到Apple的发行说明,其中包含从1.2到2.0的详细更改列表。

1 个答案:

答案 0 :(得分:3)

Revision history 2015-04-08等等:

  
      
  • 更新了Swift 1.2。

  •   
  • Overflow Operators删除了溢出除法(& /)和溢出余数(&%)运算符。

  •   

似乎一直工作到包括Swift 1.1

release notes for Xcode 6.3 and Swift 1.2包括

  

删除了& /和&%运算符,以简化语言并提高一致性。   与& +,& - 和& *运算符不同,这些运算符不提供二进制补码算术行为;它们为除法提供了特殊的案例行为,余数为零,以及Int.min / -1。如果需要,这些测试应在代码中明确写入比较。 (17926954)。