Golang中make和new的区别
new
和 make
是内建的两个函数,主要用来创建分配类型内存
区别:
make: 只用于slice、map以及channel的初始化, 无可替代
make 无可替代
我们在使用slice、map以及channel的时候,还是要使用make进行初始化,然后才才可以对他们进行操作。
new: 用于类型内存分配(初始化值为0), 不常用;
new不常用
所以有new这个内置函数,可以给我们分配一块内存让我们使用,但是现实的编码中,它是不常用的。我们通常都是采用短语句声明以及结构体的字面量达到我们的目的,比如:
i : =0
u := user{}