这篇文章主要介绍“go语言的make和new怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“go语言的make和new怎么用”文章能帮助大家解决问题。
make
和 new
是golang中初始化一个结构时,经常会使用到的关键子,但是这两个关键字常常让我们感到困惑。因为它们能够初始化的结构并不相同。
make
的作用是初始化内置的数据结构,例如slice(切片)、哈希表和 Channelnew
的作用是根据传入的类型分配一片内存空间并返回指向这片内存空间的指针例如:
//创建了一个元素为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怎么用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。