簡體   English   中英

Perl對象中的數組數組

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM