
不,他们返回的是一样的,
package mainimport "fmt"import "reflect"type Vector struct { x int y int}func main() { v := &Vector{} x := new(Vector) fmt.Println(reflect.TypeOf(v)) fmt.Println(reflect.TypeOf(x))}结果:
*main.Vector*main.Vector
邮件列表上有一些争论,两者都令人困惑:
https://groups.google.com/forum/?fromgroups=#!topic/golang-
nuts/GDXFDJgKKSs
需要注意的一件事:
new()是获取指向未命名整数或其他基本类型的指针的唯一方法。您可以编写“ p:= new(int)”,但不能编写“ p:=&int
{0}”。除此之外,这是一个优先事项。
来源:https : //groups.google.com/d/msg/golang-
nuts/793ZF_yeqbk/-zyUAPT-e4IJ
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)