我在记录中添加了一个数组,但是我无法访问数组的元素.这是我的代码.
# Create and initialize an array
@array = (1, 2, 3);
# Add it to a record
$rec = {
field1 => 'foo',
field2 => @array
};
Run Code Online (Sandbox Code Playgroud)
我试图打印数组的内容,但它不起作用.
print $rec->{field2}[0] . "\n";
Run Code Online (Sandbox Code Playgroud)
我的问题是......将数组添加到记录然后访问数组元素的正确方法是什么?
你必须参考数组,
$rec = {
field1 => 'foo',
field2 => \@array
};
Run Code Online (Sandbox Code Playgroud)
否则数组被压平到列表中
$rec = {
field1 => 'foo',
field2 => 1,
2, 3
};
Run Code Online (Sandbox Code Playgroud)
您可能还想检查一下 perldoc perlreftut