new用于任意类型,返回指向零值内存的指针;make仅用于slice、map、channel,返回已初始化的值本身。

在Go语言中,new和make都是用于内存分配的内置函数,但它们的应用场景、行为和返回值有本质区别。理解这些差异是掌握Go内存管理的关键。
这是两者最根本的区别。
它们返回的内容完全不同,这直接影响了后续如何使用它们。
两者的初始化工作量不一样。
立即学习“go语言免费学习笔记(深入)”;
基本上就这些,记住核心点:初始化slice、map、channel用make;需要为其他任意类型分配内存并获取其指针时用new。实践中,new的使用频率远低于make,因为直接声明或取地址通常更简洁。
以上就是Golang中new和make有什么区别_Golang内存分配函数对比说明的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号