我有一个简单的 main.go
文件如下:
package main
import "fmt"
func init() {
fmt.Println("init!")
}
func main() {
// init()
fmt.Println("main")
}
当我运行这个程序时,我看到以下输出!
init
main
我完全糊涂了!我猜这两个带有 func()
签名的函数都作为入口点运行。但是,更有趣的是,我无法调用 main
中的 init
函数!
任何人都可以向我解释这段代码有什么问题吗?
最佳答案
init
是一个 special name for a function that initializes a package .它是自动调用的,规范中提到“不能在程序的任何地方引用初始化函数”。您应该使用任何其他名称。
关于go - 如何在golan main函数中调用一个没有输入和输出的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38387243/