swift - 包含 XCode6 Beta 的路径

标签 swift xcode6

Swift 实现了 Darwin 的部分内容,例如,这是有效的:

import Darwin
rand()

XCode6 在哪里存储为此的底层包含文件?我想以与 rand() 中添加的方式相同的方式添加 scanf 功能。

最佳答案

如果您在 Swift 笔记本中输入“rand()”,请在 Xcode 中跳转到定义 (CMD-CTRL-J),它将带您到 C 标准库的 Swift header 。

我相信你可以在其中看到Apple提供的Swift API的所有C标准库函数。但你看不到 Swift 实现,因为我认为没有提供它。我猜它被编译到 Swift 框架中了。

但是你问的是那个头文件所在的位置。查找方法如下:

  1. 创建 Swift 命令行应用程序,并使用 rand() 函数。
  2. 构建它。
  3. 在报表导航器中,展开所有底层命令行构建命令,以查找传递给编译器的路径。

如果您查看链接阶段的路径,您可能会在 /Applications/Xcode6-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/macosx 中找到一些内容 .

但我不认为 Swift 使用纯文本文件格式作为 header ,并且我认为 header 只能让您访问 C 的标准库,因为中间还有一个已编译的 Swift 包装层,或者某种桥接 header ,因此此时添加缺失的功能可能并不容易。

关于swift - 包含 XCode6 Beta 的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24067653/

相关文章:

ios - 知道 swift 不断变化,将第三方 FRP 框架用于长期运行的项目有多安全?

iOS 音频视频自定义消息

ios - 如何在 mapbox 中添加所有附近的 POI?

ios - UITableView 不显示单元格

xcode - 如何禁用 iphone 3.5"屏幕 Xcode

Swift:创建任何对象的字典数组

ios - 带有 ScrollView 的 ViewController 显示空屏幕

ios - 使用 UIStepper 递增/递减预填充的 UITextField

ios - "App installation failed: Could not inspect application package"

uiimage - iOS 8 UIImage 元数据