为了开发可重用的代码,它通常有利于将主程序的各个部分分成不同的文件,同时保持内聚的包结构。然而,运行“go run main.go”时遇到错误可能表明需要调整执行命令。
要有效运行主包中的多个文件,请将命令从“go run main.go”修改为“go run *.go”。此命令指示编译器处理当前目录中的所有 Go 文件(扩展名为“.go”),有效地组合各个文件中的代码。
考虑以下目录结构和随附的文件:
ls foo # output: main.go bar.go
// file bar.go package main import "fmt" func Bar() { fmt.Println("Bar") }
// file main.go package main func main() { Bar() }
尝试使用上述代码结构运行“go run main.go”会导致错误,报告“Bar”未定义。这是因为“go run main.go”只编译并执行“main.go”文件。
通过使用“go run *.go”,“main.go”和“bar.go”都被处理,允许“main.go”中的main函数访问“Bar”来自“bar.go”的函数。
截至 2019 年 7 月 26 日,Go 版本 >=1.11 ,命令“去跑”。可以在 Windows 机器上使用,达到与“go run *.go”相同的结果。
以上是如何使用'go run”运行同一包中的多个Go文件?的详细内容。更多信息请关注PHP中文网其他相关文章!