学堂 学堂 学堂公众号手机端

在Go语言中,new和make都是用来分配内存的关键字,但它们的用法和作用对象不同

lewis 1年前 (2024-04-04) 阅读数 5 #技术

在Go语言中,newmake都是用来分配内存的关键字,但它们的用法和作用对象不同。

  1. new关键字用来分配内存,并返回内存地址,主要用来分配值类型(如int、string、struct等)的内存。使用new分配的内存会被初始化为零值。
//使用new分配整型变量的内存 vari*int i=new(int)
  • make关键字用来分配并初始化引用类型(如slice、map、chan等)的内存,返回的是该类型的引用。使用make分配的内存会被初始化为类型的零值。
  • //使用make分配切片的内存 s:=make([]int,0,10)

    总结来说,new用于值类型的内存分配,make用于引用类型的内存分配。


    版权声明

    本文仅代表作者观点,不代表博信信息网立场。

    热门