Go main包调用同包下的函数
今天在写代码过程中发现在同一个包内,main.go中无法调用同一个包中的函数时,显示报错
client\main.go:45:10: undefined: login
说我的函数没有定义,我已经用go mod init初始化了项目,为什么还是不行?
文件结构:
├── login.go
└── main.go
上网查阅后发现,原因是Go 中 main 包默认不会加载其他文件, 而其他包都是默认加载的。如果 main 包有多个文件,则在执行的时候需要将其它文件都带上,即执行 go run *.go。