Go教程

go语言中make和new的区别是什么?

本文主要是介绍go语言中make和new的区别是什么?,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

区别

make和new都是内存的分配(堆上),但是make只用于slice、map以及channel的初始化(非零值),会返回一个相应类型的值;而new用于类型的内存分配,并且内存置为零,会返回一个相应类型的指针 。make返回的是引用类型本身;而new返回的是指向类型的指针。
make是引用类型的初始化方法

这篇关于go语言中make和new的区别是什么?的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!