版本兼容性
本书介绍的是 Swift 6.2.3,这是 Xcode 26.2 中默认包含的 Swift 版本。你可以使用 Swift 6.2.3 编译器来构建以 Swift 6.2.3、Swift 5、Swift 4.2 或 Swift 4 编写的代码。
当你使用 Swift 6.2.3 编译器构建采用 Swift 5 语言模式的代码时,可以使用 Swift 6.2.3 的新特性——这些特性要么默认启用,要么通过即将推出的特性标志启用。但是,要启用严格的并发检查,你需要升级到 Swift 6.2.3 语言模式。
此外,当你使用 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.2.3 编写的目标可以依赖使用 Swift 5、Swift 4.2 或 Swift 4 编写的目标,反之亦然。这意味着,如果你有一个分成多个框架的大型项目,可以逐个框架地将代码迁移到较新的语言版本。