Go 語言結(jié)構(gòu)實例分析
當(dāng)前的調(diào)試部分可以使用 go run filename.go 來執(zhí)行。
可以生成一個 build.sh 腳本,用于在指定位置產(chǎn)生已編譯好的 可執(zhí)文件:
#!/usr/bin/env bash CURRENT_DIR=`pwd` OLD_GO_PATH="$GOPATH" #例如: /usr/local/go OLD_GO_BIN="$GOBIN" #例如: /usr/local/go/bin export GOPATH="$CURRENT_DIR" export GOBIN="$CURRENT_DIR/bin" #指定并整理當(dāng)前的源碼路徑 gofmt -w src go install test_hello export GOPATH="$OLD_GO_PATH" export GOBIN="$OLD_GO_BIN"
關(guān)于包,根據(jù)本地測試得出以下幾點:
- 文件名與包名沒有直接關(guān)系,不一定要將文件名與包名定成同一個。
- 文件夾名與包名沒有直接關(guān)系,并非需要一致。
- 同一個文件夾下的文件只能有一個包名,否則編譯報錯。
文件結(jié)構(gòu):
Test --helloworld.go myMath --myMath1.go --myMath2.go
測試代碼:
// helloworld.go
package main
import (
"fmt"
"./myMath"
)
func main(){
fmt.Println("Hello World!")
fmt.Println(mathClass.Add(1,1))
fmt.Println(mathClass.Sub(1,1))
}
// myMath1.go
package mathClass
func Add(x,y int) int {
return x + y
}
// myMath2.go
package mathClass
func Sub(x,y int) int {
return x - y
}
到此這篇關(guān)于Go 語言結(jié)構(gòu)實例分析的文章就介紹到這了,更多相關(guān)Go 語言結(jié)構(gòu)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang中g(shù)oroutine和channel使用介紹深入分析
一次只做一件事情并不是完成任務(wù)最快的方法,一些大的任務(wù)可以拆解成若干個小任務(wù),goroutine可以讓程序同時處理幾個不同的任務(wù),goroutine使用channel來協(xié)調(diào)它們的工作,channel允許goroutine互相發(fā)送數(shù)據(jù)并同步,這樣一個goroutine就不會領(lǐng)先于另一個goroutine2023-01-01
實時通信的服務(wù)器推送機(jī)制 EventSource(SSE) 簡介附go實現(xiàn)示例代碼
EventSource是一種非常有用的 API,適用于許多實時應(yīng)用場景,它提供了一種簡單而可靠的方式來建立服務(wù)器推送連接,并實現(xiàn)實時更新和通知,這篇文章主要介紹了實時通信的服務(wù)器推送機(jī)制 EventSource(SSE)簡介附go實現(xiàn)示例,需要的朋友可以參考下2024-03-03

