范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Go切片内存分配

  切片是数组的抽象。 切片使用数组作为底层结构。 切片包含三个组件:容量,长度和指向底层数组的指针。
  通过使用 append 或 copy 函数可以增加切片的容量。 append 函数可以为数组的末尾增加值,并在需要时增加容量。s :=[]string{}  for i:=0;i<10;i++ { 	s = append(s,"i") 	t.Log(len(s),cap(s)) } 123456    slice_test.go:25: 1 1     slice_test.go:25: 2 2     slice_test.go:25: 3 4     slice_test.go:25: 4 4     slice_test.go:25: 5 8     slice_test.go:25: 6 8     slice_test.go:25: 7 8     slice_test.go:25: 8 8     slice_test.go:25: 9 16     slice_test.go:25: 10 16 12345678910
  当前储存空间存不下数据时,空间会以之前的空间数*2
  比如:	numbers := make([]int,5,10) 	numbers = append(numbers, 1,2,3,4,5) 	t.Log(numbers,cap(numbers)) 123
  定义 numbers 的数组长度为5 ,空间给他10,并追加数据到切片。    slice_test.go:11: [0 0 0 0 0 1 2 3 4 5] 10 1
  空间为10, 当我们再添加一个数据到切片时候,空间是多少了呢?	numbers := make([]int,5,10) 	numbers = append(numbers, 1,2,3,4,5,6) 	t.Log(numbers,cap(numbers)) 123    slice_test.go:11: [0 0 0 0 0 1 2 3 4 5 6] 20 1
  得到数据为20,和我们设想的一样。注意
  切片中的数据是共用内存,也就是我们选区切片区间的某一个值,并且在这个小对象中进行数据的修改,会影响整个切片的值,在开发当中非常要注意这种。
  举个例子:	numbers := make([]int,5,10) 	numbers = append(numbers, 1,2,3,4,5) 	t.Log(numbers,cap(numbers))  	first := numbers[5:7] 	second := numbers[6:8] 	t.Log(first,len(first),cap(first)) 	t.Log(second,len(second),cap(second))  	second[0] = 9 	t.Log(first,len(first),cap(first)) 	t.Log(second,len(second),cap(second)) 	t.Log(numbers) 12345678910111213
  取了一个first 和second 这两个数据重合的数据是2.
  打印一下:slice_test.go:11: [0 0 0 0 0 1 2 3 4 5] 10 slice_test.go:15: [1 2] 2 5 slice_test.go:16: [2 3] 2 4 slice_test.go:19: [1 9] 2 5 slice_test.go:20: [9 3] 2 4 slice_test.go:21: [0 0 0 0 0 1 9 3 4 5] 123456
  虽然在second 中修改了数据,但是影响到了大对象numbers 的数据,还有一个要注意的是,first 小对象,他的内存分配是5,second 的空间是4,这是为啥呢?原来,这样取的小对象切片,的空间是这个切片加上大对象末尾的值
  开发中如果修改了其中的一个变量,但是又不想影响大对象,这个时候会傻掉。
  那如何去获取一个和numbers 一样的数据,但是又不会影响numbers呢?
  我们copy一份numbers	number2 := make([]int, len(numbers)) 	 	copy(number2, numbers) 	t.Log(number2,cap(numbers),cap(number2))  	number2[0] = 9  	t.Log(number2,numbers,cap(numbers),cap(number2)) 12345678
  输出一下结果:slice_test.go:11: [0 0 0 0 0 1 2 3 4 5] 10 slice_test.go:15: [1 2] 2 5 slice_test.go:16: [2 3] 2 4 slice_test.go:19: [1 9] 2 5 slice_test.go:20: [9 3] 2 4 slice_test.go:21: [0 0 0 0 0 1 9 3 4 5] slice_test.go:25: [0 0 0 0 0 1 9 3 4 5] 10 10 slice_test.go:29: [9 0 0 0 0 1 9 3 4 5] [0 0 0 0 0 1 9 3 4 5]10 10 12345678
  好,不懂在座的各位看懂了没有。没有影响的,通过copy 切片再去修改切片的值,是不会印象原切片的。
  关于切片的知识,还远远不止这些,后续遇到问题,再补充吧,欢迎关注

决策参考字节跳动申请注册狗头等商标凤凰卫视易主1亚马逊去年投入110亿美元重金打造流媒体和音乐内容事件4月16日,据报道,亚马逊在周四发布的年度报告中披露,去年该公司在视频流媒体和音乐服务上的支出达到了110亿美元,这也意味着决策参考腾讯被责令解除网络音乐独家版权快手成立电竞公司1腾讯被责令解除网络音乐独家版权将重塑相关市场竞争秩序事件近日,市场监管总局发布行政处罚决定书(国市监处202167号),认定腾讯控股有限公司(以下简称腾讯)收购中国音乐集团股权案决策参考小红书启动新融资中国移动拟募资560亿1流媒体Disney付费用户数达1。16亿同比增长近一倍事件8月13日,据报道,迪士尼公布的第三财季财报显示迪士尼第三财季获得营收170亿美元,同比增长45利润为9。95亿美元,上决策参考TikTok全球下载量去年居首中移资本成芒果超媒二股东1TikTok全球下载量去年居首超过Facebook事件日本经济新闻8月6日发布的一项统计报告显示,短视频AppTikTok2020年下载量位列全球第一,这也是2018年此项下载量魅族Note9即将发布硬杠小米荣耀不是出路一款编号为M923Q的魅族新机近日出现在了国家工信部网站上。按照这个节点和魅族以往型号的推测,应该为即将发布的魅族Note9。从网站上认证的这几张采取了后现代抽象主义拍摄手法(前面小米也来凑折叠屏热闹?可是折叠没卵用?自从柔宇十月底发布了其酝酿已久的折叠手机(平板)FlexPai,这个折叠概念就不断深入人心,因为柔宇算得上是第一个真正把饼给做出来的公司。即使这种最低售价也要8999元的看起来二不锤子已经彻底凉凉了吗?锤子科技天猫官方旗舰店已无手机大年初四五,本该是朋友们聚会打牌喝酒在亲戚面前吹牛逼的日子,然而对于锤友们来说却有一个坏消息在天猫上的锤子科技官方旗舰店仅剩下手机壳可以选购,手机已经全部下架。此次,不知道是不是天决策参考台积电成亚洲市值最高公司快看获得2。4亿美元融资1超越腾讯,阿里巴巴!台积电成亚洲市值最高公司事件8月20日上午消息,台积电已经超越腾讯阿里巴巴,成为亚洲市值最高的公司。芯片制造商台积电的市值猛增。截至发稿,台积电市值约5731决策参考我国网民规模过10亿元字节跳动收购VR公司Pico1我国网民规模过10亿事件近日,CNNIC发布了第48次中国互联网络发展状况统计报告,报告显示截至2021年6月,我国网民规模达10。11亿,较2020年12月增长2175万,互联小米9,水滴屏幕坐实了?国外知名网站GSMARENA今天上架了有关小米9的参数,当然一切都是基于谣言Rumors。来看看这个网站所曝出的图片和参数吧。首先不知道哪里弄来的小米9图片,竟然目测还是后置双摄(MekaVerse以太坊NFT推出受到争议的困扰MekaVerse是近期推出的最成功的NFT收藏品之一,上周24小时内产生了超过6000万美元的销售额。但最初的推出受到争议的困扰,从那时起,更多关于潜在欺诈的指控浮出水面。当Me
TezoSpark火花电竞真无线蓝牙耳机,带您最强游戏体验前言伴随着S10如火如荼的火热进行,电竞又一次让我们领略了它的独特魅力,时下流行的电竞在可以预见的未来将会愈发的同传统体育赛事平分秋色。同时随着科技的发展,音乐游戏等各项活动是越发红米K40游戏增强版真实体验,看完你不心动算我输前言距离RedmiK40游戏增强版发布已经过去了半个月,想必很多小伙伴是既心动又纠结,天玑1200处理器的游戏手机真的能打吗?带着你的疑问往下看,下面告诉你这台仅售1999元的千元不可或缺的夏日好物米家直流变频循环落地扇电池版体验在出租屋空调屡次罢工且制冷效率低下,需要花费巨资维修的时候,我在给二房东付费维修为后来者造福和购置风扇给自己添加固定资产之间想也没想的选择了购买风扇。经过一番精挑细选,我将目光放在一共317台,中兴领主应急保障车启动生产,中兴日照工厂要起飞中流击楫,兴邦报国。2021年5月15日,大领主应急保障车生产启动暨人民卫士慰问出征发车仪式顺利在日照中兴汽车有限公司顺利举办,而笔者也有幸在现场见证了这个特殊的时刻。中兴日照工厂一次半客制化之旅,TTC金粉轴ampampampAKKO大碳球帽体验近期如果要在键盘市场找一款好用的机械轴体,那TTC金粉轴肯定是绕不开的37g超轻的压力克数,顺滑稳定的线性手感粉嫩的轴心配色,让TTC金粉轴成为了外设市场的网红轴,受到众多发烧友的魅族16到手了!网友说真香J。Wong回复异形屏都是耍小聪明魅族16从官方透露信息到正式发布,热度就没有褪去过。魅族似乎回到了以前那个令人骄傲的时代现在第一批抢到魅族16的用户也已经收到货了。从真机来看,颜值还是非常不错的,大家看看幸运的煤集赞刷朋友圈,黔驴技穷的东风风神,对奕炫MAX来说有用吗写在前面最近半个月,笔者的微信一直响个不停,原因是东风风神奕炫MAX的一场挑战极限之旅营销活动,引来不少参加新车试驾活动的同行求赞。因此,笔者微信这些天来被风神奕炫MAX持续刷屏。深度试驾第二代长安CS55PLUS,老司机告诉你这车到底值不值得买对于长安CS55PLUS这款车,估计很多人并不陌生,要知道这款车的市场表现一直都很稳定,在长安汽车内部贡献度仅次于CS75系列,和逸动系列不相上下。以今年上半年为例,CS55系列累试驾长安UNIK,大空间高配置省油,2。0T蓝鲸动力爱信8AT太厚道壶中日月长多少,闲步天津看往来。九河下梢河海要冲的天津,是中国历史上的一座文化名城,也是见证了中国近现代发展史的一座历史之城。所谓山河秀丽俏风光,天津文化美名扬,说的正是天津在人文3年卖近40万辆捷途还放大招,捷途X1首发亮相,捷途汽车品牌独立从今天起,请叫我奇瑞控股捷途汽车。在7月8日晚上的北京电影学院文创园,我们见证了捷途这一划时代意义的时刻。捷途汽车品牌之夜上,让笔者想起了三年前捷途作为奇瑞控股的一个产品序列被推出3DTouch你全都会了吗?18个实用技巧苹果在AppleWatch上首次提出ForceTouch概念,而后在iPhone6s上首次提出功能类似的3DTouch,3DTouch为手机带来了一个全新的纵向操控深度,设备除了能