[英]Array of arrays in a Perl object
我正在嘗試在Perl對象中使用數組數組,但仍然沒有得到它的工作原理。
這是構造函數:
sub new {
my $class = shift;
my $self = {};
$self->{AoA} = [];
bless($self, $class);
return $self;
}
以下是將內容插入AoA的代碼部分:
push (@{$self->{AoA}}[$row], $stuff);
我仍然無法在構造函數中定義數組數組的路上找到任何東西。
您不需要在構造函數中定義AoA - 僅僅是最頂層的arrayref。 就受祝福的哈希而言,AoA僅僅是一個arrayref。
你的構造函數是完美的。
要插入,你做兩件事:
# Make sure the row exists as an arrayref:
$self->{AoA}->[$row] ||= []; # initialize to empty array reference if not there.
# Add to existing row:
push @{ $self->{AoA}->[$row] }, $stuff;
或者,如果要添加known-index元素,只需
$self->{AoA}->[$row]->[$column] = $stuff;
push @{$self->{AoA}}[$row]
在於你過早地取消引用數組1級別。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.