天天看點

【Go語言學習筆記】包

包其實是每個大型工程都會使用的子產品化工具。

将相關的代碼封裝成一個包,給其他項目調用,提供不同的功能。

GO的設計是将一個檔案夾看成一個包,雖然不一定非要用檔案夾的名字,但是比較建議。

同一個檔案夾下隻能有一個包名。

同檔案夾下可以自由調用,不用引用。

引入其它包,隻能調用它提供的首字母大寫的函數。

main包是程式的入口,即編譯必須從這個包開始。

且main包中必須有且隻有一個main()函數,編譯的時候可以用包名編譯,也可以用檔案編譯。

顯而易見,這是個初始化函數。在你引用包的時候,這個函數會被執行。在main函數之前。

如果你引用了多個包,會按棧的順序,執行對應的init函數。

【Go語言學習筆記】包

在導⼊時,可指定包成員通路⽅式,⽐如對包重命名,以避免同名沖突:

有時,使用者可能需要導入一個包,但是不需要引用這個包的辨別符。在這種情況,可以使用空白辨別符_來重命名這個導入:

_操作其實是引入該包,而不直接使用包裡面的函數,而是調用了該包裡面的init函數。

繼續閱讀