1.2 版本兼容性
2 分钟阅读
原文链接: https://docs.swift.org/latest/documentation/the-swift-programming-language/compatibility/
1.2 版本兼容性
了解在旧的语言模式下可以使用哪些功能。
本书描述的是 Swift 6.4,也就是 Xcode 26.4 中默认包含的 Swift 版本。你可以用 Swift 6.4 的编译器来构建用 Swift 6.4、Swift 5、Swift 4.2 或 Swift 4 编写的代码。
当你用 Swift 6.4 编译器构建使用 Swift 5 语言模式的代码时,仍然可以使用 Swift 6.4 的新特性——它们要么默认开启,要么通过"即将到来的特性"标志开启。不过,若要启用严格的并发检查,则需要升级到 Swift 6.4 语言模式。
此外,当你在 Xcode 15.3 中构建 Swift 4 和 Swift 4.2 代码时,大部分 Swift 5 的功能依然可用。话虽如此,下面这些变化只对使用 Swift 5 及更高语言模式的代码生效:
- 返回不透明类型的函数需要 Swift 5.1 运行时。
try?表达式不会给本来就返回可选值的表达式再增加一层可选性。- 大整数常量的初始化表达式会被推断为正确的整数类型。例如,
UInt64(0xffff_ffff_ffff_ffff)会求值出正确的结果,而不是溢出。
使用并发需要 Swift 5 语言模式,以及提供了相应并发类型的 Swift 标准库版本。在 Apple 平台上,部署目标至少需要设为 iOS 13、macOS 10.15、tvOS 13、watchOS 6 或 visionOS 1。
用 Swift 6.4 编写的目标可以依赖用 Swift 5、Swift 4.2 或 Swift 4 编写的目标,反之亦然。这意味着,如果你有一个拆分成多个框架的大型项目,可以一次迁移一个框架到更新的语言版本。