2014-06-05 48 views
0

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

回答

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); 
} 

我希望这可以帮助