gpt4 book ai didi

go - 何时使用 var 或 := in Go?

转载 作者:数据小太阳 更新时间:2023-10-29 03:38:22 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Why there are two ways of declaring variables in Go, what's the difference and which to use?

(1 个回答)



var vs := in Go

(3 个回答)


2年前关闭。




下面两个例子有什么区别吗?

type Example struct {}

func main() {
e := Example{}
}

对比
type Example struct {}

func main() {
var e Example
}

有更好的吗?

谢谢!

最佳答案

可能值得注意:
使用 :=当您需要创建一个带有特定值(不是零值)的变量时。

number := 12
obj := SomeStruct{name: "user"}
slice := []string{"a", "b", "c"}
someNilPointerData := (*SomeStruct)(nil)

使用 var当您需要在没有任何初始化的情况下定义变量时使用关键字,因此将在其上使用零值。
var a int // zero value of int is 0
var mut sync.Mutex
var result []map[string]interface{}

使用 var 的另一个好处关键字,在单个语句中创建多个相同类型的变量。
var result1, result2, result3, result4 []map[string]interface{}
var关键字对于将某些文字值存储在具有不同数据类型的变量中也很有用。
// store string literal value in interface{} variable
var anyValue interface{} = "hello world"

// store int literal value in float64 variable
var otherValue float64 = 12

关于go - 何时使用 var 或 := in Go?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53404305/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com