【go語言學習】包引用介紹
最近在學習Go程式設計,本文簡單的敘述如何在Go程式設計中使用包(包管理)。
和其他大多數語言一樣,Go也存在包,並使用package關鍵字定義一個包。首先介紹在程式中如何引入包,引入包有以下幾種方式:
1. 最簡單的方式引入一個包的方式是直接引入包,例如:
import "fmt"
import "os"
2. 也可以通過下面的方式將包一塊引入,並寫在括號內:
inport (
"fmt"
"os"
)
通過上面的方式,可以引入系統包或第三方的包,下面重點介紹如何引入自定義的包和函式:
一般我們將主程式放在src的mian資料夾下(主程式中包含main函式,並將主程式的包名寫為package main),將其他模組放在相應的資料夾下,例如下圖所示
主函式在main.go檔案中,主函式名也可以為其他,但必須包含main函式。在Go程式設計中,怎麼引入自己編寫的模組呢,例如在main.go中如何呼叫add.go、subtract.go或者是multiply.go中的檔案。
add.go與subtract.go在cal資料夾下,所以這兩個程式的包名為cal(package cal),multiply.go在multi資料夾下,所以程式的包名為multi(package multi)。如果mian函式要呼叫add.go或者subtract.go中的函式,必須要引入包"cal"(import "cal")。要呼叫multiply.go中的函式,那就要引入包"multi",如果我們在程式中直接寫import "multi",編譯器會提示我們can not find package "multi"。因為我們的"multi"包在包"cal"下,所以我們要把包名寫完整"cal/multi",下面就可以呼叫各個檔案中的函數了。
Go中如果函式名的首字母大寫,表示該函式是公有的,可以被其他程式呼叫,如果首字母小寫,該函式就是是私有的,因此我們只能呼叫add.go、subtract.go或者multiply.go中的公有函式。具體呼叫如下圖:
add.go
subtract.go
multiply.go
最後注意:檔名可以和該包名不一致,但檔案中使用的包名必須要和該包名一致。