加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Go中分配原语:new

发布时间:2020-12-16 09:43:25 所属栏目:大数据 来源:网络整理
导读:????Go中的new,是一个用来分配内存的内建函数,但是不像在其它语言中,它并不初始化内存,只是将其置零。也就是说, new(T)会为T类型的新项目,分配被置零的存储,并且返回它的地址,一个类型为*T的值。 在Go的术语中,其返回一个指向新分配的类型为T,值为

????Go中的new,是一个用来分配内存的内建函数,但是不像在其它语言中,它并不初始化内存,只是将其置零。也就是说,new(T)会为T类型的新项目,分配被置零的存储,并且返回它的地址,一个类型为*T的值。在Go的术语中,其返回一个指向新分配的类型为T,值为零的指针。

????由于new返回的内存是被置零的,这会有助于你将数据结构设计成,每个类型的零值都可以使用,而不需要进一步初始化。这意味着,数据结构的用户可以使用new来创建数据,并正确使用。

当结构中有指针,比如下面:

type Cert struct { .... Subject *PkixName `json:"subject,omitempty"` }

指针会被初始化为nil,这个需要注意

个人微信公众号:

作者:jiankunking 出处:http://blog.csdn.net/jiankunking

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读