1. 程式人生 > >go中的變數重宣告

go中的變數重宣告

  變數重宣告含義是對已經宣告過的變數再次宣告。變數重宣告的前提條件如下:

1.由於變數的型別在其初始化時就已經確定了,所以對它再次宣告時賦予的型別必須與其原本的型別一致,佛足額會產生編譯錯誤。

2.變數的重宣告只可能發生在某一個程式碼塊中。如果與當前的變數重名的是外層程式碼塊的變數,那就是另一種含義了。

3.變數的重宣告只有在使用短變數宣告時才會發生,否則也無法通過編譯。如果要在此處宣告全新的變數,那麼就應該使用包含關鍵字var的宣告語句,但是這時就不能與同一程式碼塊中的任何變數有重名了。

4.被“宣告並賦值”的變數必須是多個,並且其中至少有一個是新的變數。這時我們才說對其中的舊變數進行重宣告。

測試:

func main(){
	var err error
	n, err := io.WriteString(os.Stdout, "Hello, everyone!\n")
	fmt.Printf(string(n))
	fmt.Println(err)
}

這裡的n是新的變數,而err則是重新宣告的變數