go import 导入包名前加下划线点'.'是什么意思?

ameyume
博客专家认证
2019-08-01 11:26:14
import 导入包中加下划线'_'表示只执行该库的 init 函数而不对其它导出对象进行真正地导入。
那么,加入下划线点'.'又是什么意思?如import最后一行:
import (
"net/http"
"net/http/httptest"
"testing"
"runtime"
"path/filepath"
_ "hello/routers"

"github.com/astaxie/beego"
. "github.com/smartystreets/goconvey/convey"
)
...全文
599 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
指尖的爷 2021-01-02
  • 打赏
  • 举报
回复
讲的太好了
ameyume 2019-08-01
  • 打赏
  • 举报
回复
谢谢。之前看过不用就忘了。
qybao 2019-08-01
  • 打赏
  • 举报
回复
这是包别名的特殊方式,可以省略包名直接调用该包的方法(相当于本地包)

import (
f "fmt" //f是fmt包的别名
. "fmt" //相当于把包导入到本地
)

func main() {
//f.Println("hello") //用包的别名调用包的方法
Println("hello") //省略包名直接调用
}

2,190

社区成员

发帖
与我相关
我的任务
社区描述
go语言学习与交流版
社区管理员
  • go语言社区
  • Freeman Z
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧