要一直走下去

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理



//切片申请内存
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函数的返回的是这三个类型本身
posted on 2020-07-01 18:34  要一直走下去  阅读(607)  评论(0编辑  收藏  举报