seq 赋值会创建一个新的 seq 副本吗?
Does seq assignment create a new seq copy?
给定两个序列 a 和 b,声明如下:
var
a = @[1, 2, 3]
b = @[4, 5, 6]
a = b
会创建一个新的 seq 将所有内容从 b 复制到 a 还是重用 a?我有特别关于 shallowCopy 的问题。我不知道他们在做什么不同。
简短的回答大多是肯定的。
长答案是序列分配由 procs 处理,出现在 assign module 中,它是系统模块的一部分。您可以在该文件中搜索 tySequence
以查看相关代码。
给定两个序列 a 和 b,声明如下:
var
a = @[1, 2, 3]
b = @[4, 5, 6]
a = b
会创建一个新的 seq 将所有内容从 b 复制到 a 还是重用 a?我有特别关于 shallowCopy 的问题。我不知道他们在做什么不同。
简短的回答大多是肯定的。
长答案是序列分配由 procs 处理,出现在 assign module 中,它是系统模块的一部分。您可以在该文件中搜索 tySequence
以查看相关代码。