中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

golang中如何自定義包

發布時間:2020-06-22 17:54:30 來源:億速云 閱讀:312 作者:Leah 欄目:編程語言

golang中如何自定義包?這篇文章運用了實例代碼展示,代碼非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

包是函數和數據的集合,用 package 關鍵字定義一個包。

主要用于組織 Go 源代碼,提供了更好的可重用性與可讀性。由于包提供了代碼的封裝,因此使得 Go 應用程序易于維護。

下面創建一個自定義包的實例

創建存放包的目錄pac

mkdir -p $GOPATH/src/test/pac
cd $GOPATH/src/test/pac

新建文件pac.go

package pac

import "fmt"

func Printstr(x string) {
    fmt.Println(x + " is pac")
}

此處為了便于維護,將包名和目錄名一致。

新建demo.go調用自定義的包

在$GOPATH/src/test 目錄下創建

package main

import "pac"

func main() {
    pac.Printstr("this")
}

運行

go run demo.go

輸出 this is pac ,證明成功

以上實例,引入文件demo.go和包文件pac.go不在同一目錄,不屬于同一個包。那么屬于同一個包,且在同一個目錄的兩個文件,是如何訪問的,看下面例子。

創建 pac2.go

在$GOPATH/src/test/pac目錄下

package pac

import "fmt"

func printstr2 (x string)  {
    fmt.Println(x + " is pac2")
}

修改pac.go,讓pac.go調用pac2.go

package pac

func Printstr(x string) {
    //fmt.Println(x + " is pac")
    printstr2(x)
}

運行 demo.go

go run demo.go

輸出結果:this is pac2

總結

1、 如果項目目錄不在GOPATH環境變量設置的路徑里,需要把項目移到GOPATH路徑里,或者GOPATH中把項目路徑設置進去;不然會報:

demo.go:3:8: cannot find package "pac" in any of:
    /usr/lib/golang/src/pac (from $GOROOT)
    /home/go/src/pac (from $GOPATH)

2、import語句使用的是文件夾的名稱。

3、包文件的函數名第一個字母大寫,這樣外部可以調用。如果同一個package下,所有文件之間相互訪問,函數名第一個字母大寫小寫無所謂。

4、main包,不能訪問同目錄,同main包其他文件。

5、文件夾的名稱和package的名稱不一定相同,為了便于維護,建議一致。

6、調用自定義包使用package名稱.函數名的方式,如上例:

pac.Printstr("this")

到此為止, 關于golang中自定義包的方法有了一個基礎的認識, 但是對于具體的使用方法還是需要多加鞏固和練習,如果想了解更多相關內容,請關注億速云行業資訊。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

青田县| 许昌县| 连山| 灵武市| 子长县| 嘉鱼县| 讷河市| 周至县| 寻乌县| 图木舒克市| 利津县| 从江县| 光泽县| 大姚县| 胶南市| 比如县| 家居| 尖扎县| 聂拉木县| 高青县| 玉屏| 同心县| 英吉沙县| 农安县| 聊城市| 奉新县| 确山县| 陇川县| 大埔县| 洪江市| 萨嘎县| 平潭县| 海原县| 临颍县| 西宁市| 内乡县| 克拉玛依市| 宜宾县| 佛山市| 伊金霍洛旗| 册亨县|