您好,基本上这是 perl 中的 OO 编程问题。我想要两个对象 A 和 B,并且 A 包含一个 B 类型的成员变量。我做了一些测试,但似乎它不起作用。任何的想法?
下午
package a;
sub new{
my $self = {};
my $b = shift;
$self->{B} = $b;
bless $self;
return $self;
}
sub doa{
my $self = shift;
print "a\n";
$self->{B}->dob;
}
1;
下午
package b;
sub new {
my $self = {};
bless $self;
return $self;
}
sub dob{
my $self = shift;
print "b\n";
}
1;
测试.pl
use a;
use b;
my $b = b->new;
my $a = a->new($b);
$a->doa;
当我运行它时,它显示:
a
Can't locate object method "dob" via package "a" at a.pm line 16.