Xcode 11 Beta 5不显示Swift 5.1

use*_*052 11 xcode ios swift

我已经从Apple网站下载了XCode 11,并且尝试将代码升级到Swift 5.1,但是XCode却没有提供满足该要求的选项。另外,我看不到iOS 13模拟器可用。我以前从未遇到过这个问题,所以我想念什么?我的操作系统已更新为MacOS Catalina

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

Ham*_*ish 16

首先请注意,“ Swift Language Version”下拉菜单不会选择编译器版本,而是会选择一种兼容模式来运行编译器(有关更多信息,请参见此处)。

可以说,在这种情况下,下拉菜单的标签是错误的,因为Xcode 11中的“ Swift 5”选项实际上意味着“ Swift 5.1”。这可以通过运行以下命令进行演示:

#if swift(<5.1)
print("Less than 5.1")
#else
print("At least 5.1")
#endif
Run Code Online (Sandbox Code Playgroud)

您会看到At least 5.1打印出来的。有趣的是,这意味着实际上没有办法使用兼容语言版本5.0来运行5.1编译器。

  • 这很令人困惑,因为Xcode确实在Swift 4和4.2之间做出了区分。当我安装Xcode 11时,我希望看到的是Swift 5.1,而不是Swift 5。 (5认同)
  • @Greg Brown 我猜不会有 &gt; 5.0 的选项,因为从 5.1 开始就有 abi 稳定性) (3认同)