Go語言中同一個package中函數(shù)互相調(diào)用為undefined的解決
同一個package中函數(shù)互相調(diào)用為undefined的解決
代碼如下:
package main import "fmt" func main() { myFunc() } func init() { fmt.Println("there is main.init()") }
package main import "fmt" func init() { fmt.Println("there is myClass.init()") } func myFunc() { fmt.Println("there is myClass.myFunc()") }
執(zhí)行main方法后得到:
解決方案
GoLand通過option+F12打開Terminal終端執(zhí)行一下操作:
go run *.go
或者
go build . ./run // 恕我直言,這種方法還沒成功
同一個package下不同文件中函數(shù)調(diào)用報未定義問題
代碼如下:
- hello.go文件
package main import "fmt" func hello() ?{ ? ?fmt.Print("go =======") }
- main.go文件
package main func main() { ? ? hello() }
編譯過程報錯:
# command-line-arguments
test\main.go:10:3: undefined: hello
Process finished with exit code 2
出現(xiàn)這樣的原因是hello.go文件并未編譯
解決方式大致有兩種
- 第一個:通過go命令編譯,go run *.go 或 (go bulid . ,. run)
- 第二個:通過單元測試調(diào)用函數(shù)
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
go語言實現(xiàn)將重要數(shù)據(jù)寫入圖片中
本文給大家分享的是go語言實現(xiàn)將數(shù)據(jù)的二進(jìn)制形式寫入圖像紅色通道數(shù)據(jù)二進(jìn)制的低位,從而實現(xiàn)將重要數(shù)據(jù)隱藏,有需要的小伙伴參考下吧。2015-03-03Go?函數(shù)中獲取調(diào)用者的函數(shù)名和文件名及行號
這篇文章主要介紹了Go?函數(shù)中獲取調(diào)用者的函數(shù)名和文件名及行號,文章圍主題詳細(xì)內(nèi)容展開相關(guān)介紹,感興趣的小伙伴可以參考一下2022-05-05Golang自定義開發(fā)Prometheus?exporter詳解
Exporter是基于Prometheus實施的監(jiān)控系統(tǒng)中重要的組成部分,承擔(dān)數(shù)據(jù)指標(biāo)的采集工作,這篇文章主要為大家介紹了如何自定義編寫開發(fā)?Prometheus?exporter,感興趣的可以了解一下2023-06-06一文搞懂Go語言標(biāo)準(zhǔn)庫strconv
strconv包實現(xiàn)了基本數(shù)據(jù)類型和其字符串表示的相互轉(zhuǎn)換,本文主要介紹Go語言標(biāo)準(zhǔn)庫strconv,想要學(xué)習(xí)strconv標(biāo)準(zhǔn)庫的可以了解一下2023-04-04Go語言映射內(nèi)部實現(xiàn)及基礎(chǔ)功能實戰(zhàn)
這篇文章主要為大家介紹了Go語言映射的內(nèi)部實現(xiàn)和基礎(chǔ)功能實戰(zhàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2022-03-03