有人能告诉我为什么在这个非常小而平凡的例子中,main没有找到Class :: Accessor生成的方法吗?Perl Class ::访问失败,简单的例子 - 为什么?
的这几行代码失败,
perl codesnippets/accessor.pl
Can't locate object method "color" via package "Critter" at
codesnippets/accessor.pl line 6.
看到代码:
#!/opt/local/bin/perl
# The whole Class::Accessor thing does not work !!
my $a = Critter->new;
$a->color("blue");
$a->display;
exit 0;
package Critter;
use base qw(Class::Accessor);
Critter->mk_accessors ("color");
sub display {
my $self = shift;
print "i am a $self->color " . ref($self) . ", whatever this word means\n";
}
我只是想看到以类别::访问器::优雅和鼠标相同的行为。 – 2010-06-04 11:34:44
请勿使用鼠标或C:A,请使用'Moose' – 2010-06-04 15:16:19
请参阅[我的解决方案](http://stackoverflow.com/questions/2973549/perl-classaccessor-failure-trivial-example-why/2975492#2975492)例如“穆斯”中的一个例子。 – 2010-06-04 15:25:24