首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Go的new跟make分配内存的区别

2013-12-28 
Go的new和make分配内存的区别1.new(T)创建一个没有任何数据的类型为T的实例,并返回该实例的指针;2.make(T,

Go的new和make分配内存的区别
1.new(T)创建一个没有任何数据的类型为T的实例,并返回该实例的指针;
2.make(T, args)只能创建 slice、map和channel,并且返回一个有初始值args(非零)的T类型的实例,非指针。

var p *[]int = new([]int)   // 分配slice结构内存 : *p = nilvar v []int = make([]int, 100)  // 分配一个有 100 个整数的slice

热点排行