我想在我的一个项目中使用@warn_unused_result @rethrows func filter(@noescape includeElement: (Self.Generator.Element) throws -> Bool) rethrows -> [Self.Generator.Element]
方法。应用程序应该在iOS 8及更高版本上运行。如果我在文档中查找该方法,它会说:“可用性: iOS (9.2及更高版本)”
但是,如果我在iOS 8.4上调用该方法,它可以处理任何问题。
知道为什么文档中写着iOS 9.2,但它仍然在iOS 8.4上工作吗?所以,我可以称它为w/o任何可用性检查,并确保它不会在未来崩溃?
提前感谢!
发布于 2016-01-12 01:12:06
这是Swift标准库的一部分,它完全不依赖iOS SDK。Swift运行时与应用程序捆绑在一起,因此对于系统来说,Swift应用程序的哪个版本并不重要。我假设这个可用标记可能与Swift 2中对filter
函数所做的更改有一些共同之处。
如您所见,这两种方法的声明是不同的。
https://stackoverflow.com/questions/34739316
复制