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()的主要内容,如果未能解决你的问题,请参考以下文章

Golang make和new的区别及实现原理详解

Golang中的内置函数

内置函数

golang内置数据类型作为函数参数

Golang 引用类型介绍

golang内置类型和内置函数