为什么自动复活在 'for' 有效?
Why autovivification works at 'for'?
我有下一个代码:
print for @{ $events->{ $name } };
当 $events
为空散列时,我得到 $name
键值是空数组 []
尽管我只是访问元素但未向其分配任何内容,但为什么自动生成仍然有效?
分配不会自动生成;评估为左值,以便您可以分配。
Foreach 的列表表达式被评估为左值以允许 $_ = 1 for @a;
我有下一个代码:
print for @{ $events->{ $name } };
当 $events
为空散列时,我得到 $name
键值是空数组 []
尽管我只是访问元素但未向其分配任何内容,但为什么自动生成仍然有效?
分配不会自动生成;评估为左值,以便您可以分配。
Foreach 的列表表达式被评估为左值以允许 $_ = 1 for @a;