Perl - 对象中的对象数组

时间:2014-06-05 00:20:39

标签: perl

我有objA,它有一定程度的抽象,我正在尝试创建具有自己属性的objB,但其中一个是objA数组。我希望能够创建objB并使用值填充它的objA数组。如何在perl中编码?

1 个答案:

答案 0 :(得分:2)

如果您的ObjA个对象基于哈希,那么您可以拥有一个与数组引用相对应的字段来存储ObjB个对象的列表。

你不会说你想如何使用或访问这些项目,但你可以说,像这样写你的方法

package ObjA;

sub new {
  my ($class);
  bless {}, $class;
}

sub add_b_object {
  my ($self, $b_obj);
  push @{ $self->{b_objects} }, $b_obj;
}

然后你的代码看起来像

my $a_obj = ObjA->new;

for (1..3) {
  my $b_obj = ObjB->new;
  $a_obj->add_b_object($b_obj);
}

我希望有帮助