Go 使用自定义包(package)
自定义包的分为两种:
1.同目录下的包;
2.不同目录下的包;
*经测试,同目录下是不可以用不同包的文件的
同目录下的包:
不同文件中的变量和函数都可以直接访问
不同目录下的包:
1.把要在自定义包外部使用的变量或者函数的首字母改为大写!!!,这样外部可以访问他们;
2.如果项目目录不在GOPATH环境变量设置的路径里,需要把项目移到GOPATH路径里,或者GOPATH中把项目路径设置进去;(GOPATH可设置多个)
如图,我配置了我这个项目要用的GOPATH:
3.import 时,比如现在我要使用DBHandler这个包,只需要在main.go的import中写上 "./DBHandler" 就导入成功了;
DBHandler包在文件管理器中的位置,如图所示:
4.开始使用自定义包中的函数,需要注明包名,然后需要在包外部访问的函数和变量都要以大写开头,如图所示(左为main.go,右为DBHandler包中的内容):
5.构建和安装你的自定义包,如图所示,在src目录下,也就是DBHandler包所在目录打开终端运行go build+包名 和 go install+包名,如果没有报错就说明构建和安装成功了:
6.查看自定义包的.a生成文件,如图所示:
关于import,有以下注意事项:
(1)在使用第三方包的时候,当源码和.a均已安装的情况下,编译器链接的是源码。
(2)到这里我们明白了所谓的使用第三方包源码,实际上是链接了以该最新源码编译的临时目录下的.a文件而已。
(3)import后面的最后一个元素应该是路径,就是目录,并非包名。
感谢以下文章的作者:
http://www.golangtc.com/t/555464c2421aa9519000005e
http://www.kuqin.com/shuoit/20150310/345120.html
转载请注明出处:http://www.cnblogs.com/ficow/p/6537363.html,谢谢!