首页 > 其他分享 >go学习(三十)make()函数

go学习(三十)make()函数

时间:2023-02-24 16:23:04浏览次数:48  
标签:make 数据类型 内存空间 三十 参数 预留 go 提前

make() 是 Go 语言内存分配的内置函数,默认有三个参数。

make(Type, len, cap)

三个参数

Type:数据类型,必要参数,Type 的值只能是 slice、 map、 channel 这三种数据类型。
len:数据类型实际占用的内存空间长度,map、 channel 是可选参数,slice 是必要参数。
cap:为数据类型提前预留的内存空间长度,可选参数。所谓的提前预留是当前为数据类型申请内存空间的时候,提前申请好额外的内存空间,这样可以避免二次分配内存带来的开销,大大提高程序的性能。

make() 的三种不同用法:

第一种,只传类型,不指定实际占用的内存空间和提前预留的内存空间,适用于 map 和 channel 。
第二种,指定实际占用的内存空间为 2,不指定提前预留的内存空间。
第三种,指定实际占用的内存空间为 2,指定提前预留的内存空间是 4。

参考:
https://blog.csdn.net/yilovexing/article/details/121172745

标签:make,数据类型,内存空间,三十,参数,预留,go,提前
From: https://www.cnblogs.com/sybil-hxl/p/17151916.html

相关文章

  • golang-小技巧:struct嵌套
    gostruct1typeastruct{2namestring3agestring4}56typebstruct{7a//匿名嵌套结构体8na......
  • Go语言并发编程:对进程、线程、协程和并发、并行的理解
    Go语言并发编程:进程、线程、协程和并发、并行的理解一、进程和线程对操作系统进程和线程以及协程的了解,可以看看我前面的文章:对进程、线程和协程的理解以及它们的区别......
  • run MongoDB in Docker container
    PSC:\Users\【user]>dockerpullmongo:latestlatest:Pullingfromlibrary/mongo10ac4908093d:Pullcomplete685504455d09:Pullcompleteebd36404f329:Pullco......
  • golang 映射(map)
    1.映射的定义map是一种无序的基于key-value的数据结构,Go语言中map是引用类型,必须初始化(make)才能使用。map定义:map[KeyType]ValueType其中,KeyType表示键的类型,ValueTyp......
  • Django——小功能
    提价表单: action属性和mothod属性需要更改。所有input框要有name属性。有一个input框的type属性时submit或者有一个button按钮。如果在测试阶段不想出现403的CSRF错......
  • 代码随想录算法训练营第三十九天 | 62.不同路径,63. 不同路径 II
    一、参考资料不同路径https://programmercarl.com/0062.%E4%B8%8D%E5%90%8C%E8%B7%AF%E5%BE%84.html视频讲解:https://www.bilibili.com/video/BV1ve4y1x7Eu不同路......
  • CF611H New Year and Forgotten Tree
    首先注意到:任何合法方案一定能调整成:每种位数选一个关键点,每条边都至少有一个关键点。本质上是希望找一个边和点的匹配。一种思路是确定关键点之间形成的树后(暴力枚举),让......
  • [LeetCode] 2357. Make Array Zero by Subtracting Equal Amounts
    Youaregivenanon-negativeintegerarray nums.Inoneoperation,youmust:Chooseapositiveinteger x suchthat x islessthanorequaltothe smalle......
  • go-gorm:pool
    gorm官方是给出了关于mysql的线程池的配置。官方文档地址: https://gorm.io/zh_CN/docs/connecting_to_the_database.htmlps:可知,mysql/sqlLite/TiDB进行了支持。 ......
  • Django DRF接口开发之多表字段数据返回
      关于Serializer序列化数据,一般情况一个实体Model对应一个Serializer,其实功能跟FromModel有点类似。但是在涉及到多表关联查询,序列化数据接口进行返回时,无法返回......