我有一个数组,它是一个结构的成员:
- $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}}