欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          go語言中自定義包的方法

          go語言中自定義包的方法

          包是函數(shù)和數(shù)據(jù)的集合,用 package 關(guān)鍵字定義一個包。

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

          下面創(chuàng)建一個自定義包的實例

          創(chuàng)建存放包的目錄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調(diào)用自定義的包

          在$GOPATH/src/test 目錄下創(chuàng)建

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

          運行

          go run demo.go

          輸出 this is pac ,證明成功

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

          創(chuàng)建 pac2.go

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

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

          修改pac.go,讓pac.go調(diào)用pac2.go

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

          運行 demo.go

          go run demo.go

          輸出結(jié)果:this is pac2

          總結(jié)

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

          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、包文件的函數(shù)名第一個字母大寫,這樣外部可以調(diào)用。如果同一個package下,所有文件之間相互訪問,函數(shù)名第一個字母大寫小寫無所謂。

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

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

          6、調(diào)用自定義包使用package名稱.函數(shù)名的方式,如上例:

          pac.Printstr("this")

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號