每天5分钟,学习Go包和导入包

Go语言的程序会组织成若干组文件,每组文件被称为一个包。同一个目录下的所有的.go文件必须声明为同一个包名。

  • 包名一般使用包所在目录的名字。
  • 包名和目录命名时均全小写。
  • 导包时,使用的是全路径。如果有包名相同,可以在导入时取别名。

net/http/
    cgi/
    cookiejar/
        testdata/
    fcgi/
    httptest/
    httputil/
    pprof/
    testdata/

 

main包

所有用Go语言编译的可执行程序,都必须有一个main包和一个main()函数, 作为程序执行的入口。

 

  • 所有的import 都必须在代码里面使用,否则会编译失败,编译器也会提示。

import本地导入

编译器首先会查找Go的安装目录,然后才会查找GOPATH目录。

  • 标准库中的包会在安装Go的位置找到。
  • 开发者创建的包,在GOPATH环境变量指定的目录找到。

例如:

import (

"fmt"

"strings"

)

import 远程导入

通过Github等分布式共享代码是大势所趋。Go语言工具链支持从Github、Bitbucket等网站获取源代码,并按照URL的路径保存到GOPATH目录里面。

例如:

import "github.com/spf13/viper"

  • 这个过程使用 go get 获取任意URL的包。
  • go get具有递归性,会扫描源码树,获得依赖的包。

 

import 命名导入

当多个包同名时,例如file/convert 和 network/convert。 重名的包可以重新命名。

例如:

import(

"fmt"

myfmt "mylib/fmt"

)

> 欢迎关注扫码,加我VX一起学习。更有面试资料,面经分享哦!!!

import空白标识符

有时引入一个包,但是却不需要在代码里显示引用,可以用空白标识符_.

 

参考

  • Go in action
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序哥聊面试

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值