首页 > 其他 > 详细

Go make和new的区别

时间:2020-07-01 19:36:34      阅读:58      评论:0      收藏:0      [点我收藏+]



//切片申请内存
s1 := make([]int, 5, 10) 
//map申请内存
m1 = make(map[string]int, 10)
//指针申请内存
var a = new(int) //a为0x342112910


make
make也是用于内存分配的,区别于new,它只用于slice、map、chan的内存创建
而且它返回的类型就是这三个类型本身,而不是他们的指针类型
因为这三种类型就是引用类型,所以就没有必要返回他们的指针了

 

make和new的区别

  • 1.make和new都是用来申请内存的
  • 2.new很少用,一般用来给基本数据类型申请内存,string、int等,返回的是对应类型的指针*string、*int
  • 3.make用于给slice、map、chan申请内存,make函数的返回的是这三个类型本身

Go make和new的区别

原文:https://www.cnblogs.com/staff/p/13220861.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!