我正在尝试启动一个新的swift项目,用于fedora 30.0的一些培训目的。该项目由两个简单的文件组成:
主要.swift
let req: Request = RequestImpl()
req.sendRequest(url: "hello")
请求.swift
protocol Request {
func sendRequest(url: String)
}
final class RequestImpl: Request {
// MARK: - Request
func sendRequest(url: String) {
print(url)
}
}
问题
当我在终端上运行
swiftc main.swift
命令时,会出现以下错误:$ swiftc main.swift
main.swift:1:10: error: use of undeclared type 'Request'
let req: Request = RequestImpl()
^~~~~~~
P.S:在运行上述命令之前,我先运行
swiftc Request.swift
。 最佳答案
这应该编译,但打印不起作用:$ swiftc Request.swift main.swift
如果您想创建包含多个文件的模块并运行它,我建议您create executable package, build and run it。