本文主要讲解golangimport关键字的用法

import(
"fmt"
)
//然后在代码里面可以通过如下的方式调用
fmt.Println("hello world")

上面这个fmt是Go语言的标准库,他其实是去GOROOT下去加载该模块,当然Go的import还支持如下两种方式来加载自己写的模块:

  1. 相对路径import "./model" //当前文件同一目录的model目录,但是不建议这种方式import
  2. 绝对路径import "shorturl/model" //加载GOPATH/src/shorturl/model模块

上面展示了一些import常用的几种方式,但是还有一些特殊的import,让很多新手很费解,下面是三种导入包的使用

  1. 点操作: 有时候会看到如下的方式导入包import( . "fmt" ) 这个点操作的含义就是这个包导入之后在你调用这个包的函数时,你可以省略前缀的包名,也就是前面你调用的fmt.Println(“hello world”) 可以省略的写成Println(“hello world”)
  2. 别名操作: 别名操作顾名思义可以把包命名成另一个用起来容易记忆的名字import( f “fmt” ) 别名操作调用包函数时前缀变成了重命名的前缀,即f.Println(“hello world”)
  3. _ 操作, 这个操作经常是让很多人费解的一个操作符,请看下面这个import: import ("database/sql" _ "github.com/ziutek/mymysql/godrv")

_ 操作其实只是引入该包。当导入一个包时,它所有的init()函数就会被执行,但有些时候并非真的需要使用这些包,仅仅是希望它的init()函数被执行而已。这个时候就可以使用_操作引用该包了。即使用_操作引用包是无法通过包名来调用包中的导出函数,而是只是为了简单的调用其init函数()。

最新文章

  1. css 补漏
  2. C和指针 第六章 习题
  3. Javascript笔记一
  4. Day09
  5. loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写
  6. LCA专题
  7. mybatis代码生成器配置文件详解
  8. svn出现“Previous operation has not finished; run 'cleanup' if it was interrupted”,解决方法
  9. oracle之时间格式的应用
  10. asp.net mvc中匿名类dynamic
  11. 数据库迁移(SQL SERVER导入数据到MySql)
  12. debugging python with IDLE
  13. Adobe flash CC 汉化破解方法
  14. ZooKeeper实现命名服务
  15. SpringCloud使用Prometheus监控(基于Eureka)
  16. hdu4044
  17. pointer-events: none 的两个应用场景
  18. JavaScript数据类型之数字类型
  19. js 判断字符串中是否包含某个字符串的方法实例
  20. linux下忘记mysql密码的几种找回方法

热门文章

  1. Spring学习总结(18)——Spring整合Mysql数据库一主多从、多主多从配置
  2. HDU2147 kiki's game
  3. nyoj 20水
  4. PuTTY介绍、安装、使用
  5. 4418: [Shoi2013]扇形面积并|二分答案|树状数组
  6. 调用imagemagick做响应图片
  7. 《AndroidStudio每日一贴》3.高速切换代码风格、配色方案和键盘
  8. hdoj--5532--Almost Sorted Array(正反LIS)
  9. 11.MATLAB基本编程
  10. 移动端H5页面编辑器开发实战--经验技巧篇