如何恢复旧的Swift的AnyObject&任何自动转换行为?

时间:2017-07-07 03:25:29

标签: swift xcode

我了解Swift希望通过将任何类型的自动转换行为移除到AnyObjectAny来强制执行强类型操作。但有时候,对于某种参数,我只想实际声明该参数接受任何,而无需添加as AnyObjectas Any因为我的情况它使得代码难看,因为我确实从函数内部的参数检查了各种类型的数据。如何在新的Swift 3.x或4.x中唤起该行为(本地或全局)?

1 个答案:

答案 0 :(得分:0)

对于swift的SE-0072进化提议,您可能无法在Swift 3中执行此操作。有一些转换问题简称here

为此,Proposed solution声明 " Swift 3中的隐式桥接转换应该被删除"。

Impact on existing code开始说明:

  

以前依赖于Swift值类型与其关联的桥接Objective-C类型之间的隐式转换的代码现在需要通过as强制转换来进行手动强制。