被坑的体无完肤,特此纪念,不是新手不要看
包结构如图
接下来我们要在main.go中调用myprint2.go中的方法
myprint2.go
package test import "fmt" func MyPrint2() { fmt.Println("这条信息来自myprint2") }
myprint.go
package test import "fmt" func MyPrint() { fmt.Println("这条信息来自myprint") }main.go
package main import ( "try2/test" ) func main() { test.MyPrint2() }
C:/Go/bin/go.exe build -i [E:/goworkspace/src/try2] 成功: 进程退出代码 0. E:/goworkspace/src/try2/try2.exe [E:/goworkspace/src/try2] 这条信息来自myprint2 成功: 进程退出代码 0.
接下来我们来说说这里的坑:
1 package是包,真的是包,是特么文件夹啊,物理文件夹啊,卧槽啊,坑爹啊,我第一次写的时候myprint.go跟myprint2.go的package不一样(别问为啥,我也不知道咋想的,为了不误导大家,就不写出来了),结果main.go调用的时候,各种报错;
2 当import的时候,导入的也是包,这个"包"跟上面的包含义一样,但是跟java中的包含义不太一样,如果你不知道前面这句啥意思,千万不要去搜索,越不想记的东西越不容易忘;
3 调用的时候,使用包名.方法名来调用,但是,但是,我没有试结构体,为啥没试,我懒。如果谁看到这里自己去试了,请告诉我。如果谁看到这里自己没试还想知道,那找完答案也记得告诉我。我懒
有疑问加站长微信联系(非本文作者)