本教程描述了Swift 4.2,它是Xcode 10.0中包含的Swift的默认版本。您可以使用Xcode 10.0构建以Swift 4或Swift 3编写的目标。
注意
当Swift 4.2编译器使用Swift 3代码时,它将其语言版本标识为3.4。因此,您可以使用条件编译块来编写与多个版本的Swift编译器兼容的代码。#if swift(>=3.4)
当您使用Xcode 9.2构建Swift 3代码时,大多数新的Swift 4功能都可用。也就是说,以下功能仅适用于Swift 4代码:
- 子串操作返回该
Substring
类型的实例,而不是String
。 - 该
@objc
属性隐式添加在较少的位置。 - 对同一文件中的类型的扩展可以访问该类型的私有成员。
用Swift 4编写的目标可以依赖于用Swift 3编写的目标,反之亦然。这意味着,如果您有一个分为多个框架的大型项目,您可以一次将代码从Swift 3迁移到Swift 4一个框架。