go语言的make和new怎么用

2023-05-13,,

这篇文章主要介绍“go语言的makenew怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“go语言的make和new怎么用”文章能帮助大家解决问题。

make 和 new 是golang中初始化一个结构时,经常会使用到的关键子,但是这两个关键字常常让我们感到困惑。因为它们能够初始化的结构并不相同。

make 和 new

  • make 的作用是初始化内置的数据结构,例如slice(切片)、哈希表和 Channel
  • new 的作用是根据传入的类型分配一片内存空间并返回指向这片内存空间的指针

例如:

//创建了一个元素为int的slice,返回的是slice的头部指针
slice := make([]int, 0, 100)

//创建了一个key为int,value为布尔类型的map,返回的是结构体指针
m := make(map[int]bool, 10)

//创建了一个元素为int的管道,返回的是结构体的指针
ch := make(chan int, 5)

new呢,相比与复杂的 make 关键字, 功能就简单多了,它只能接收类型作为参数然后返回一个指向该类型的指针

例如:

i := new(int)

//完全等价于new,返回的都是指针
var v int
i := &v

关于“go语言的make和new怎么用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注本站行业资讯频道,小编每天都会为大家更新不同的知识点。

《go语言的make和new怎么用.doc》

下载本文的Word格式文档,以方便收藏与打印。