(* T)(nil)和&T {}new(T)有什么区别?高朗

(* T)(nil)和&T {}new(T)有什么区别?高朗,第1张

(* T)(nil)和&T {} / new(T)有什么区别?高朗

这两种形式的

new(T)
&T{}
是完全等效的:两个分配零T和一个指针返回到该分配的内存。唯一的区别是,
&T{}
对于像
int
;
这样的内置类型不起作用。你只能做
new(int)

该表格

(*T)(nil)
没有 分配
T
它只是返回一个零指针T.你
test3 :=(*Struct)(nil)
仅仅是一个混淆的惯用的变种
var test3 *Struct



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5163543.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-18
下一篇2022-11-18

发表评论

登录后才能评论

评论列表(0条)

    保存