我通过引用将结构传递给函数。
我期待如果我在函数内部定义和更改结构,我可以获得外部的新值。
但它并没有发生。
谁能解释为什么?
package main
import "fmt"
func intbyRef(i *int) {
*i = 10
}
type ttt struct {
a int
}
func change(t *ttt) {
var p ttt = ttt{7}
fmt.Println(p)
t = &p
}
func main() {
i := 1
var t *ttt
fmt.Println(i)
fmt.Println(t)
change(t)
intbyRef(&i)
fmt.Println(i)
fmt.Println(t)
}
你可以在这里尝试代码:https : //play.golang.org/p/I-GIdIZ9c6
慕哥6287543
FFIVE
回首忆惘然
相关分类