golang 内置函数new()
Posted 执行力是成功的关键
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang 内置函数new()相关的知识,希望对你有一定的参考价值。
new()
这是一个用来分配内存的内置函数,它的第一个参数是一个类型,不是一个值,它的返回值是一个指向新分配的 t 类型的零值的指针。
在golang的代码定义如下:
func new(t Type) *Type
strut{}
直接使用struct{} 来初始化strut时,返回的是一个struct类型的值,而不是指针两者是不一样的
golang的new和make主要区别如下:
1、make只能用来分配及初始化类型为slice,map,chan的数据;new可以分配任意类型的数据
2、new分配返回的是指针,即类型*T;make返回引用,即T;
3、new分配的空间被清零,make分配后,会进行初始化。
以上是关于golang 内置函数new()的主要内容,如果未能解决你的问题,请参考以下文章