Golang-import-introduce

本文主要讲解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函数()。

时间: 2024-12-17 18:17:45

Golang-import-introduce的相关文章

Golang Import使用入门

我们在写Go代码的时候经常用到import这个命令用来导入包文件,而我们经常看到的方式参考如下: import(     "fmt" ) 然后我们代码里面可以通过如下的方式调用 fmt.Println("hello world") 上面这个fmt是Go语言的标准库,他其实是去goroot下去加载该模块,当然Go的import还支持如下两种方式来加载自己写的模块: 相对路径 import "./model" //当前文件同一目录的model目录,但

golang import 下划线 的实现原理

这个操作经常是让很多人费解的一个操作符,请看下面这个import import ( "database/sql" _ "github.com/ziutek/mymysql/godrv" )  // _操作其实是引入该包,而不直接使用包里面的函数,而是调用了该包里面的init函数, // 要理解这个问题,需要看下面这个图,理解包是怎么按照顺序加载的: 程序的初始化和执行都起始于main包.如果main包还导入了其它的包,那么就会在编译时将它们依次导入.有时一个包会被多

vue.js单页面应用实例

一:npm的安装 由于新版的node.js已经集成了npm的环境,所以只需去官网下载node.js并安装,安装完成后使用cmd检测是否成功. 测试node的版本号:node -v 测试npm的版本号:npm -v 以上提示代表安装成功 二:vue.js环境搭建 1.首先安装淘宝的npm镜像:npm install -g cnpm --registry=https://registry.npm.taobao.org 2.安装vue.js环境::cnpm install -g vue-cli 3.测

VUE 路由组件左右滑动切换(移动端)

<template> <div id="headed"> <ul class="tab"> <li> <!-- @click="jump(index) index: 切换颜色 代表切换的路由文件 :class="{'active_color': index==0} 当index等于0的时候显示第一个,index:1 切换排球 --> <div class="body_bo

vue单文件组件实例2:简单单文件组件

? Introduce.vue: <template> <div class="intro"> 单位介绍 </div> </template> <script> </script> <style scoped> .intro{ font-size:20px; color:#000; margin:20px auto; } </style> Employment.vue: <templa

Golang- import 导入包的语法

一 包的导入语法 在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下: import( "fmt" ) 然后在代码里面可以通过如下的方式调用 fmt.Println("hello world") 上面这个fmt是Go语言的标准库,他其实是去GOROOT下去加载该模块,当然Go的import还支持如下两种方式来加载自己写的模块: 相对路径     import   "./model"                 /

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: unrecognized import path "golang.org/x/net/context" (https fetch: Get https://golang.org/x/net/context?go-get=1: dial tcp 216.239.37.1:443: connect

Golang- import 导入包的语法(转)

Golang- import 导入包的语法 一 包的导入语法 在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下: import(         "fmt"     ) 然后在代码里面可以通过如下的方式调用 fmt.Println("hello world") 上面这个fmt是Go语言的标准库,他其实是去GOROOT下去加载该模块,当然Go的import还支持如下两种方式来加载自己写的模块: 相对路径     import   &qu

golang程序编译时提示“package runtime: unrecognized import path &quot;runtime&quot; (import path does not begin with hostname)”

在编译golang的工程时提示错误的, 提示的错误信息如下: package bytes: unrecognized import path "bytes" (import path does not begin with hostname) package encoding/json: unrecognized import path "encoding/json" (import path does not begin with hostname) packag

golang采坑一 expected &#39;;&#39;, found &#39;import&#39;

golang变成使用IDE,注意IDE的默认换行符号 我使用的是PHPstrome IED工具,注意右下角这个默认换行符.不然,总是提示错误 expected ";",found "import".换成\r\n 就好了 golang采坑一 expected ';', found 'import' 原文地址:https://www.cnblogs.com/iifeng/p/11458311.html