gpt4 book ai didi

swift - 如果 String 和 Array 被实现为 struct,是否意味着它们的大小也受堆栈大小的限制?

转载 作者:行者123 更新时间:2023-11-28 10:03:56 25 4
gpt4 key购买 nike

在 Swift 中,StringArray 被实现为 struct

而且,struct 是在堆栈内存中创建的。

而且,与堆内存相比,栈内存的大小非常有限 ( Is the stack size of iPhone fixed? )。

这也意味着吗?

  1. String 的长度受堆栈内存大小的限制?
  2. Array 包含的所有元素的总大小是否受堆栈内存大小限制?

最佳答案

ArrayString 和所有其他动态大小的集合(ArraySliceSubstringSet Dictionary 等)被实现为包含对堆分配缓冲区的引用的结构。

Array 所做的几乎所有事情都是其内部缓冲区中已经存在的功能。但是 Array 结构负责实现写时复制功能,这在 Swift 世界中非常普遍。

关于swift - 如果 String 和 Array 被实现为 struct,是否意味着它们的大小也受堆栈大小的限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56919530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com