分享
  1. 首页
  2. 文章

Go语言内存分配机制

roger9567 · · 2912 次点击 · · 开始浏览
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

前言: 本文是学习<<go语言程序设计>> -- 清华大学出版社(王鹏 编著) 的2014年1月第一版 做的一些笔记 , 如有侵权, 请告知笔者, 将在24小时内删除, 转载请注明出处!

Go语言有两种内存分配机制 , 分别是内置函数 new() 和make().

- new()

- 定义: func new(Type) * Type

- 返回值是一个内存块指针

- new() 是一个内置函数, 不同于其他语言中的new操作符, 它只将内存清零, 而不是初始化内存.

- make()

- 定义: func make(Type, size IntegerType) Type

- 在调用make() 函数时, Type必须是引用类型 (Slice , Map 或 Channel), IntegerType指定要创建的对象的个数.

- make() 返回值是一个对象, 而不是new返回的一个内存空间指针.

- make 和 new 对比

var p * []int = new([]int)
var v []int = make([]int,10)

有疑问加站长微信联系(非本文作者)

本文来自:博客园

感谢作者:roger9567

查看原文:Go语言内存分配机制

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

关注微信
2912 次点击
2 回复 | 直到 2000年01月01日 00:00:00
暂无回复
添加一条新回复 (您需要 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传

用户登录

没有账号?注册
(追記) (追記ここまで)

今日阅读排行

    加载中
(追記) (追記ここまで)

一周阅读排行

    加载中

关注我

  • 扫码关注领全套学习资料 关注微信公众号
  • 加入 QQ 群:
    • 192706294(已满)
    • 731990104(已满)
    • 798786647(已满)
    • 729884609(已满)
    • 977810755(已满)
    • 815126783(已满)
    • 812540095(已满)
    • 1006366459(已满)
    • 692541889

  • 关注微信公众号
  • 加入微信群:liuxiaoyan-s,备注入群
  • 也欢迎加入知识星球 Go粉丝们(免费)

给该专栏投稿 写篇新文章

每篇文章有总共有 5 次投稿机会

收入到我管理的专栏 新建专栏