当前位置:  开发笔记 > 运维 > 正文

Linux上的Swift 2.2,"使用未解析的标识符'退出'"

如何解决《Linux上的Swift2.2,"使用未解析的标识符'退出'"》经验,为你挑选了1个好方法。

我试图在Linux上的Swift 2.2中退出带有错误代码的命令行实用程序.我在这个问题上尝试了解决方案,但仍然得到一个未解决的标识符.一个复制问题的简单测试脚本:

$> cat exit_test.swift
import Foundation

guard 0 == 1 else { exit(0) }

我收到以下错误消息:

$> swift exit_test.swift
exit_test.swift:3:21: error: use of unresolved identifier 'exit'
guard 0 == 1 else { exit(0) }

它似乎exit不再导入Foundation,但我不确定下一步要查看退出方式给出特定的错误代码.我在跑Swift 2.2-dev:

$> swift --version
Swift version 2.2-dev (LLVM 46be9ff861, Clang 4deb154edc, Swift 778f82939c)
Target: x86_64-unknown-linux-gnu

rickster.. 9

exit(3)是基本的Unix(like)API.在Apple平台上,这些东西都是由Darwin模块提供的,而且由于Cocoa在很大程度上依赖于这些东西,所以也会import Foundation自动获得Darwin.

在Linux上,基本的Unix(如)API位于Glibc模块中,并且import Foundation不会为您传输该API .所以,为了得到exit(3)和其他这样的事情,你需要import Glibc自己.



1> rickster..:

exit(3)是基本的Unix(like)API.在Apple平台上,这些东西都是由Darwin模块提供的,而且由于Cocoa在很大程度上依赖于这些东西,所以也会import Foundation自动获得Darwin.

在Linux上,基本的Unix(如)API位于Glibc模块中,并且import Foundation不会为您传输该API .所以,为了得到exit(3)和其他这样的事情,你需要import Glibc自己.

推荐阅读
和谐啄木鸟
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有