Go 语言中,包是代码的组织单位,可以由多个文件组成。这意味着在同一个包中的不同文件中,可以共享变量、函数和其他的标识符。需要注意的是,这些变量必须在使用之前进行声明。一般情况下,可以在包级别的变量声明中定义变量,这样它们就可以在包中的所有文件中使用。这些变量可以在不同的文件中进行赋值和修改。
两个go文件test.go和struct.go均位于main包中,在test.go文件中调用struct.go中定义的结构体tes
使用go run src/main/test.go报错结构体未定义
PS D:\code\go\learnGo> go run src/main/test.go
# command-line-arguments
src\main\test.go:18:7: undefined: tes
这是因为使用go run编译运行指定go文件,没有编译struct.go文件导致的。如下图修改一下编译命令即可正常运行
PS D:\code\go\learnGo> go run src/main/test.go src/main/struct.go
<nil> {one}
cccccc 11
注意使用go run 编译运行多个go文件时,同时编译的go文件中只能有一个文件中有main函数