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

成都网站建设成都网络公司上海工商网站官网

成都网站建设成都网络公司,上海工商网站官网,长沙房产信息网官网,深圳网站建设 易通鼎slice包含3个部分#xff1a; 1.内存的起始位置 2.切片的大小(已经存放的元素数量) 3.容量(可以存放的元素数量) 使用make初始化切片会开辟底层内存#xff0c;并初始化元素值为默认值#xff0c;如数字为0#xff0c;字符串为空 使用New初始化切片不会开辟底层数组…slice包含3个部分 1.内存的起始位置 2.切片的大小(已经存放的元素数量) 3.容量(可以存放的元素数量) 使用make初始化切片会开辟底层内存并初始化元素值为默认值如数字为0字符串为空 使用New初始化切片不会开辟底层数组而且返回的是指向类型的指针 不同的切片可以公用底层数组如 arr : []int{1, 2, 3, 4, 5, 6, 7, 8}arr1 : arr[1:5]这里arr1是从数组下标1~4的引用左闭右开它的大小为4容量到底层数组的结尾即7。 当arr或arr1修改元素的时候底层数组受影响同时作用于两个arr和arr1两个变量。 又或者arr1使用append添加元素的时候由于切片的容量为7所以会直接在底层数组上覆盖原本的元素。但是如果append操作需要扩容的时候并不会在原有的底层数组上直接往后加元素而是复制出来一份到新的内存上所以不会影响原底层数组。 扩容规则 1.预估元素个数 如果扩容前的容量翻倍依旧不能满足所需则直接扩容到所需的容量。 否则如果元素个数1024则直接翻倍如果1024则扩容1.25倍。 否则先判断元素个数256则直接翻倍如果大于等于256会根据const threshold 256;newcap (newcap 3*threshold ) / 4这个公式进行容量预估。如果不能满足所需容量则再次根据此公式循环。相比与之前的1.25倍的容量扩容这个公式提供了一个过度曲线小切片更趋向于2倍大切片更趋向于1.25倍。 2.实际分配内存 程序申请内存并不是需要多少就直接能拿到多少而是从操作系统中拿到满足所需容量的最小内存。比如程序会预先从操作系统中申请163248等等不同规格的内存然后在根据所需容量占据的内存拿到最合适的内存。 例子 []int数组{12}在执行append时arr append(arr, 3, 4, 5)根据1判断需要的容量为564位系统下一个int占64位即8字节。预估需要的内存为5*840字节。但是程序分配内存不会直接分配40字节的内存而是找到满足条件的最小规格内存48字节。48字节可以容纳的元素个数位48/86所以上述实append操作实际上扩容后的容量为6。
http://www.w-s-a.com/news/972353/

相关文章:

  • 黄冈网站建设哪家快些网站规划与建设评分标准
  • 建站平台 绑定域名怎么在手机上做网站
  • 做电影网站违法吗莱芜 网站
  • 品牌咨询公司泉州seo不到首页不扣费
  • 做网站做一个什么主题的怎样搭建一个企业网站
  • 做设计的有什么网站桂林论坛网站有哪些
  • 做的网站不能放视频开发公司春联
  • 重庆装修房子可以提取公积金吗长沙优化官网公司
  • 做外贸的网站都有哪些带后台的html网站源码
  • 厦门百度快速优化排名手机系统优化工具
  • 宁波网站制作公司推荐公司建站多少钱
  • 网络营销薪酬公司温州网站优化定制
  • 橙色在网站中的应用淘宝客绑定网站备案号
  • 杭州视频网站建设成都设计院排行
  • 慈溪建设网站盘丝洞app破解无限盘币
  • 关于服装店网站建设的策划方案seo关键词优化软件官网
  • 丰台高端网站建设土巴兔装修贵吗
  • 宽屏网站mysqli pdo wordpress
  • 2022年没封网站直接进入赣州网吧
  • 河南省建设厅证件证件查询网站硬件开发是什么意思
  • tp5做企业网站宿迁房产网租房信息
  • php高级网站开发wordpress不能添加文章
  • 小学校园网站建设付费阅读下载网站开发
  • 如何做招聘网站网站建设中 敬请期待
  • 雅安工程交易建设网站做vip电影网站
  • 网站建设方维网站标题title为什么不能频繁的改
  • 网站建设如何上传文件wordpress列表自定义数据表
  • 摄影课程自学网站科技项目的类型有
  • 未来最紧缺的十大专业长春seo顾问
  • 为什么点不开网站公关公司是做什么的