我正在使用命令行创建swift文件并使用“swift”命令来运行其中一个 . 但是,我希望一个文件能够从另一个文件访问功能 . 如果这是C,那么我可以使用#include宏并指定文件的位置 . 但斯威夫特的进口声明似乎并不允许这样做 . 应该有办法,我想知道如何做到这一点 .
例如:
如果我有一个带有函数的文件,然后我创建另一个使用该函数的文件 . 我如何允许它使用它?
// file1.swift
import Foundation
func sayHello() -> String {
return "hello"
}
// file2.swift
import file1 // <-- trying to import file1 but it doesn't work
println(sayHello())
一旦文件生成,我就在终端写“swift file2.swift” . 但它告诉我..
error: no such module 'file1.swift'
很明显,swift编译器正在寻找一个模块 . 如何将file1变为模块?我已经看到了一些解决方案,但它们都发生在Xcode中 . 我正在寻找的是在命令行中完成所有操作 .
2 回答
然后从终端:
有关从命令行创建模块(Alfred帮助程序库)的示例,请参阅http://computers.tutsplus.com/tutorials/alfred-workflows-in-swift--cms-21807,同样http://www.alfredforum.com/topic/4902-alfred-workflows-in-swift-tutorial-is-available/?p=35662,其中本教程的作者更详细地解释了四步编译过程 .