gpt4 book ai didi

arrays - perl - 遍历数组时允许对数组进行操作

转载 作者:行者123 更新时间:2023-12-01 10:45:39 24 4
gpt4 key购买 nike

遍历数组时允许对数组进行哪些操作?
是否可以在不混淆迭代器的情况下移动/取消移动、弹出/推送、删除元素?

从哈希中添加/删除键值对有什么不同吗?

感谢您的帮助。

最佳答案

您可以分配给现有元素,但不应添加或删除它们。所以没有移位、取消移位、弹出、插入或拼接。 perlsyn :

If any part of LIST is an array, foreach will get very confused if you add or remove elements within the loop body, for example with splice. So don't do that.



如果您使用 each 迭代哈希,您还应该避免添加或删除元素,除非明确允许您删除当前元素。 each :

If you add or delete a hash's elements while iterating over it, the effect on the iterator is unspecified; for example, entries may be skipped or duplicated--so don't do that. Exception: It is always safe to delete the item most recently returned by each(), so the following code works properly:



但正如它所说,可能发生的最坏情况是条目被跳过或重复;另一方面,修改正在循环的数组可能会导致段错误。

关于arrays - perl - 遍历数组时允许对数组进行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26523449/

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