方便易用的全局函數(shù)

大多數(shù)時候,只不過是寫一個簡單的測試程序。例如:

package mainimport (    "log")func main(){
    log.Fatal("Come with fatal,exit with 1 \n")
}

這是Go語言標準log庫的用法。

無須用logger := log.New(...)來產(chǎn)生一個指針。而且可以在程序的任何地方都能使用這個log。

閱讀 log.go 源碼:

...var std = New(os.Stderr, "", LstdFlags)
...// Fatal is equivalent to Print() followed by a call to os.Exit(1).func Fatal(v ...interface{}) {
    std.Output(2, fmt.Sprint(v...))
    os.Exit(1)
}

奧妙就在于 log.go 申請了一個全局變量 std,并封裝了全局函數(shù) log.Fatal。

網(wǎng)友評論