Swift 提供了 @available、#available 这两个 Attribute 用于函数的可用版本定义和检查。
@available
用于声明一个函数的使用平台和适用版本,在 @available条件后可以包含一些平台(iOS、OSX或watchOS)和版本
@available(iOS 9.0, *) // 或者 @available(iOS 9, OSX 10.10, *)
func sayHello(_ name: String?) {
let personName = name ?? "Dalang"
print("Hello, \(personName)")
}
#available
用于函数调用时的函数版本和适用平台判断,格式同 @available 类似
if #available(iOS 9.0, *) {
sayHello(nil)
} else {
// Fallback on earlier versions
}
当调用 sayHello 函数的时候,如果不加入 #available 判断,会发生编辑错误,这大大提高了编译安全性。
本文介绍了Swift语言中如何使用@available和#available属性来指定和检查函数的可用版本及平台。通过示例展示了如何声明函数的使用平台和版本,并在调用时进行版本判断,以提高代码的编译安全性。
47

被折叠的 条评论
为什么被折叠?



