为什么是语法错误:
my @hash{1..4}=(1..4);
但不是这个:
my %hash;
@hash{1..4}=(1..4);
最佳答案
第一个例子是词法范围的 'my' +一个hash slice它预先假设可以以切片的方式声明哈希,这是无效的语法。你的第二个例子是合适的,首先声明散列,假设你正在使用'ing strict + warnings;
关于perl - 这两个定义有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11034902/