我有一个数组,它是一个结构的成员:
$self->{myArray} = ["value1","value2"];
我试图用下面的代码来迭代它:
my @myArray = $self->{myArray}; foreach my $foo (@myArray){ #Do something with the using $foo ... }
问题是’foreach’循环只执行一次(当我期望它执行两次,因为@myArray有两个元素:“value1”和“value2”)。
当我检查@myArray数组大小时,我得到它的大小是1.我在这段代码中做错了什么?
解决方法
我相信:
$self->{myArray} returns a reference.
你想要返回数组:
@{$self->{myArray}}