1
如何在多賦值語句中賦值結構體字段變量?請參閱下面的代碼。如何在多個賦值語句中分配結構字段變量
type TestMultipleReturns struct {
value string
}
func (t *TestMultipleReturns) TestSomething() {
someMap := make(map[string]string)
someMap["Test"] = "world"
t.value, exists := someMap["doesnotexist"] // fails
// works, but do I really need a 2nd line?
tmp, exists := someMap["doesnotexist"]
t.value = tmp
if exists == false {
fmt.Println("t.value is not set.")
} else {
fmt.Println(t.value)
}
}
謝謝,雖然它仍然是2行。這似乎與您可以有1個已定義變量和1個未定義,定義:= MultipleReturnCall()'''中定義的變量的行爲不一致。 Go的怪癖! – PressingOnAlways
@PressingOnAlways:如果您認爲這只是規範作者的疏忽,我會鼓勵您[提交提案](https://github.com/golang/proposal)進行更改。 –
我只是很高興它不需要* 3 *行! –