Swift运算符声明:冲突中会发生什么?

时间:2015-07-04 03:11:34

标签: swift operators

这个问题不是关于运算符重载,而是关于不同模块中运算符声明之间的冲突。换句话说,想象两个模块声明相同的运算符,如下所示:

// Module1

infix operator &+ {
  associativity left
  precedence 100
}

// Module2

infix operator &+ {
  associativity right
  precedence 50
}

如果我在项目中同时使用Module1Module2,哪些声明优先于什么情况?它完全基于我导入特定文件的那个? (这是我的猜测。)它是全球性的吗?

我即将做一个实验来弄清楚这个问题,但我认为无论如何都要在SO上提出这个问题是有用的。

0 个答案:

没有答案