Golang自訂包總結

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

近日在學習Golang的自訂包的建立方式,產生了一些經驗,因此以這篇文章作為記錄。

我們通過import語句將自訂包加入到我們項目main函數中,import語句後面的參數應該是檔案夾的名稱,和自訂包的package的名稱或者自訂包裡面的檔案名稱沒有關係,例如檔案的結構目錄如下:

main.go的源碼:

package mainimport "fmt"import "foo"func main() {bar.Abc()fmt.Print("This is main\n")}

foo/test.go的源碼:

package barimport "fmt"func Abc() {fmt.Print("This is test print\n")}

上面的代碼是順利通過編譯的。我們可以總結以下幾點:

(1)import語句使用的是檔案夾的名稱

上面例子中的import後面的參數對應的就是檔案夾foo

(2)檔案夾的名稱和package的名稱不一定相同

上面的例子中,檔案夾是foo,而package名稱是bar。

(3)調用自訂包使用package名稱.函數名的方式

例如上面使用的bar.Abc()。

(4)自訂包的調用和檔案名稱沒有關係

例如上面的test.go檔案,如果改成test_abc.go,程式也能正常編譯。編譯系統會自動尋找foo檔案夾下的所有檔案,在其中尋找package bar,然後選擇Abc函數。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.