当前位置: 首页 > news >正文

go中new和make有什么异同?

相同点:都是给变量分配内存

不同点:

  1. 作用类型不同。new通常给int、string、数组类型的变量分配内存,而make通常给slice、map、channel分配内存。
  2. 返回值类型不同。new返回指向变量的指针,make返回的是变量本身
  3. new分配内存空间后,会给变量(不是指针)初始化为0值。而make会根据不同的类型进行初始化,对于切片,会初始化长度和容量;对于映射,会创建一个空的map;对于通道,会创建一个指定缓冲区大小的channel。

相关文章:

  • [LeetCode 1306] 跳跃游戏3(Ⅲ)
  • AD利用转换工具快速生成异形焊盘
  • 从Ampere到Hopper:GPU架构演进对AI模型训练的颠覆性影响
  • TLA:用于接触-丰富操作的触觉-语言-动作模型
  • Profibus DP转ModbusTCP网关通讯案例解析
  • Arrays.asList() 隐藏的陷阱
  • 论文导读 | 基于GPU的子图匹配算法
  • #4 我们为什么使用物联网? 以及 物联网的整体结构
  • Python六大数据类型与可变类型
  • Thread类的基本用法
  • 用Webpack 基础配置快速搭建项目开发环境
  • 支持多项检测的多段环形光源 助力金属零件缺陷检测
  • Wincc7.5 对于此版本的wincc,许可证的存储介质必须插入usb接口
  • 项目风险的早期识别与应对清单
  • Swift观察机制新突破:如何用AsyncSequence实现原子化数据监听?
  • prime 1 靶场笔记(渗透测试)
  • 开源技术如何助力中小企业实现财务管理自主化?
  • 将你的 Rust + WebAssembly 项目发布到 npm
  • 开源项目 | 17款云原生安全相关的扫描和平台类开源工具
  • 开关电源输出过冲抑制设计方法
  • 中国经济新动能|警惕数字时代下经济的“四大极化”效应
  • “半世纪来对无争议边界最深入袭击”:印巴冲突何以至此又如何收场?
  • 专访|李沁云:精神分析不会告诉你“应该怎么做”,但是……
  • 央行行长:债券市场“科技板”准备工作基本就绪,目前近百家市场机构计划发行超三千亿科技创新债
  • 汪海涛评《线索与痕迹》丨就虚而近实
  • 金融政策支持稳市场稳预期发布会即将召开,潘功胜、李云泽、吴清将出席