go语言初始化结构体new方法的区别

haitgo ·
qkb_75_go
琴为心声
a:=new(user) <== 创建user变量,并且清零 b:=&user{} <== 返回的是user变量的指针 c:=user{} <== 创建user变量 正如楼主所言,三种写法的效果完全一样,区别只是 语法糖 的差异而已。会方便给不同类型的变量赋值。 反正不需要关心是创建在内存里还是堆栈里,也不用用户释放变量, 看来给用户多一些选择也不好呀...
#1