为了账号安全,请及时绑定邮箱和手机立即绑定

Go 实现是否存储地图的长度?

Go 实现是否存储地图的长度?

Go
慕斯709654 2021-10-25 19:55:30
a 是否将map其长度存储在某处,还是每次调用时都会计算len(my_map)?语言规范为地图显示了这一点,这并没有真正的帮助:map元素的数量称为它的长度。对于 map m,可以使用内置函数发现它,len并且在执行过程中可能会发生变化。可以在执行期间使用赋值添加元素并使用索引表达式检索;可以使用 delete 内置函数删除它们。在“长度和容量”部分下,我们看到:表达len(s)如果是常数s是一个string常数。如果类型为 an或to an且表达式不包含通道接收或(非常量)函数调用,则表达式len(s)andcap(s)为常量;在这种情况下不进行评估。否则,调用和不恒定,并进行评估。sarraypointerarraysslencaps所以它告诉我们它s不是常量并且被评估,但它没有说明它是否像他们对slice类型那样被查找为存储值。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 165 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信