Avatar ·

如何从另一个文件调用函数:Go中的项目结构与导入

大家好!我刚开始学习Go,遇到了一个看似简单但找不到正确解决方案的问题。我在同一个项目中有两个文件:`main.go`和`helpers.go`。在`helpers.go`中,我声明了一个输出问候语的函数`sayHello()`。在`main.go`中,我尝试调用这个函数,但编译器报错说函数未定义。 我的文件夹结构如下: ``` myproject/ ├── main.go └── helpers.go ``` `helpers.go`的代码: ```go package main import "fmt" func sayHello() { fmt.Println("Hello from helpers!") } ``` `main.go`的代码: ```go package main func main() { sayHello() } ``` 当我运行`go run main.go`时,出现错误:`undefined: sayHello`。但如果我运行`go run main.go helpers.go`,一切正常。但有人告诉我,在Go中运行时不需显式指定所有文件。我哪里做错了?是不是我使用了错误的包结构?是否需要创建...