Golang中: import 带有 _ 和不带有什么区别?

import 带有 _ 和不带有什么区别?

    import _ "beego_demo1/routers"
    import "beego_demo1/routers"
阅读 2.8k
3 个回答
  • 带下划线的,是虽然导入,但是你不会在这个包里面用对应的方法。只是让引用包执行包内对应的init() 方法。 可以看看引入mysql 包的实现方法。就是这么干的。
  • 不带下划线的,就是正常导入,你会直接引用的。

带下划线的只会执行当中的 init 函数,并不会真正导入。

新手上路,请多包涵

补充一点,带_的第三方库可以在不调用库内方法的情况下也不报错。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题