Golang-import-introduce
本文主要讲解golang中import关键字的用法
import(
"fmt"
)
//然后在代码里面可以通过如下的方式调用
fmt.Println("hello world")
上面这个fmt是Go语言的标准库,他其实是去GOROOT下去加载该模块,当然Go的import还支持如下两种方式来加载自己写的模块:
- 相对路径
import "./model"//当前文件同一目录的model目录,但是不建议这种方式import - 绝对路径
import "shorturl/model"//加载GOPATH/src/shorturl/model模块
上面展示了一些import常用的几种方式,但是还有一些特殊的import,让很多新手很费解,下面是三种导入包的使用
- 点操作: 有时候会看到如下的方式导入包
import( . "fmt" )这个点操作的含义就是这个包导入之后在你调用这个包的函数时,你可以省略前缀的包名,也就是前面你调用的fmt.Println(“hello world”) 可以省略的写成Println(“hello world”) - 别名操作: 别名操作顾名思义可以把包命名成另一个用起来容易记忆的名字
import( f “fmt” )别名操作调用包函数时前缀变成了重命名的前缀,即f.Println(“hello world”) _操作, 这个操作经常是让很多人费解的一个操作符,请看下面这个import:import ("database/sql" _ "github.com/ziutek/mymysql/godrv")
_操作其实只是引入该包。当导入一个包时,它所有的init()函数就会被执行,但有些时候并非真的需要使用这些包,仅仅是希望它的init()函数被执行而已。这个时候就可以使用_操作引用该包了。即使用_操作引用包是无法通过包名来调用包中的导出函数,而是只是为了简单的调用其init函数()。
Golang-import-introduce的更多相关文章
- Golang Import使用入门
我们在写Go代码的时候经常用到import这个命令用来导入包文件,而我们经常看到的方式参考如下: import( "fmt" ) 然后我们代码里面可以通过如下的方式调用 fmt.P ...
- golang import all 类似python import * 效果
import "io/ioutil" func main() { content, err = iotuil.ReadFile("somefile.txt") ...
- Golang import具体使用
使用gopath的时候,一般引用是从src下一层开始,比如src/github.com/…,引用github.com…,我的工程src/xxx.com/go-qb/…,引用xxx.com/go-qb/ ...
- golang 开发环境 配置 go语言 liteIDE
Mac: * 下载go安装包 go语言中文网 ** 通过源码编译安装需要先安装go1.4 wget https://studygolang.com/dl/golang/go1.10.3.src.tar ...
- vue单文件组件实例2:简单单文件组件
Introduce.vue: <template> <div class="intro"> 单位介绍 </div> </templat ...
- 带你认识webpack
一.webpack是什么 webpack是一种前端资源构建工具,一个静态模块打包器(module bundler).在webpack看来,前端的所有资源文件(js/json/css/img/less/ ...
- GO基础知识分享
目录 GO基础知识分享 go语言的基本事项 关键字 字符串的拼接和变量的定义方式 空白符 const常量 iota的用法 运算符 Go 没有三目运算符,不能适用?: 语言条件语句 for循环的方式 函 ...
- go get报错unrecognized import path “golang.org/x/net/context”…
今天安装gin框架,首先下载gin,命令如下:go get github.com/mattn/go-sqlite3 结果报错: package golang.org/x/net/context: un ...
- unrecognized import path "golang.org/x/net/html"
go run的时候报:unrecognized import path "golang.org/x/net/html" 应该是被墙掉了,自己去github上下载包即可 git cl ...
- golang test cannot find import
1. 能够import别的项目的main package. 2. 可是引用别的项目main package的时候,须要首先删除~/bin/main_package_name(你所引用的报名),不然回报 ...
随机推荐
- 企业级工作流解决方案(十三)--集成Abp和ng-alain--数据库读写分离
说到程序里面数据库管理,无非就是两件事情,一是数据库操作,对于数据库的操作,各种程序语言都有封装,也就是所谓的ORM框架,.net 方向一般用得比较多和就是.net framework和dapper, ...
- JAVAEE网上商城项目总结
发送邮件实现(使用QQ邮箱发送到指定邮箱) 需要的jar 邮件发送类代码: package util; import java.util.Properties; import javax.mail.A ...
- Vijos—— T 1359 Superprime
https://vijos.org/p/1359 描述 农民约翰的母牛总是生产出最好的肋骨.你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们. 农民约翰确定他卖给买方的是真正的质数肋骨,是因 ...
- Java向上转型和向下转型(附具体样例)
Java向上转型和向下转型(附具体样例) 熬夜整理的关于Java向上和向下转型的样例,很的通俗易懂哦~~~~ 一 ...
- [Erlang危机](4.2)Remsh
原创文章,转载请注明出处:server非业余研究http://blog.csdn.net/erlib 作者Sunface 联系邮箱:cto@188.com Remsh There's a mechan ...
- 避免ANR异常
避免ANR异常 不要在主线程中执行耗时的代码,不然很容易出现anr错误. 原因: 解决方法:
- ES TransportClient demo
import java.net.InetAddress; import java.net.UnknownHostException; import org.elasticsearch.action.b ...
- hdoj--2579--Dating with girls(2)(搜索+三维标记)
Dating with girls(2) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- Anaconda安装及PyCharm环境配置
1. Anaconda下载 Anaconda 官方下载链接: https://www.continuum.io/downloads 根据自己的系统选择下载32位还是64位. 2. 进入下载目录 如果没 ...
- Linux就该这么学 20181007(第十一章ftp)
参考链接https://www.linuxprobe.com/ iptables -F #ftp 21端口 #主动模式,被动模式 #匿名用户 本地用户 虚拟用户 vim /etc/vsftpd/vsf ...