最常見(jiàn)的一種導(dǎo)入方式
import "fmt" //導(dǎo)入fmt這個(gè)包, 這樣就可以fmt.Println()打印內(nèi)容.
而今天在群里看到, 原來(lái)還有多種import形式
import "./hello" //導(dǎo)入當(dāng)前文件相對(duì)目錄下hello包
import f "fmt" //設(shè)置f為fmt包的別名, 這樣就可以直接f.Println().
import . "fmt" //省略fmt包名, 這樣就可以直接使用Println().
import(
"image"
_ "image/png" //這個(gè)看下面shiwei xu大神的解釋
)
shiwei xu:“是指你 import 了一個(gè)庫(kù)但是沒(méi)有主動(dòng)用它。通常來(lái)說(shuō),這些庫(kù)是有副作用的,其實(shí)也就是這些庫(kù)實(shí)現(xiàn)了 init 函數(shù)。比如 image/png 的 init 函數(shù)是把自己的格式識(shí)別代碼注冊(cè)到 image 包中。比如 image/png 是修改 image 包。這樣調(diào)用 image 包的函數(shù),就會(huì)調(diào)用到 image/png 去。”
http://golang.org/ref/spec#Import_declarations