gpt4 book ai didi

perl - 为什么只有其中一个告诉我 "Modification of a read-only value attempted"?

转载 作者:行者123 更新时间:2023-12-04 03:29:19 28 4
gpt4 key购买 nike

此代码运行并产生输出 abc :

for(10..12){$_=sprintf"%x",$_;print}

但是此代码以 Modification of a read-only value attempted at ... 结束错误:
for(10,11,12){$_=sprintf"%x",$_;print}

为什么这些结构被区别对待?

(此代码也有效:)
for(10..10,11..11,12..12){$_=sprintf"%x",$_;print}

最佳答案

可能是因为当您 foreach 时开始发挥作用的“计数循环”优化。超过一个范围。 for (1, 2, 3, 4)实际上构造列表 (1, 2, 3, 4),包含那些特定的只读值,但 for (1..4)没有;它只是从范围的开始到结束迭代,给出 $_依次每个连续的值,我想没有人认为当您尝试分配给 $_ 时匹配行为是值得的。那密切。

关于perl - 为什么只有其中一个告诉我 "Modification of a read-only value attempted"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12649083/

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