我可以有这样的构造函数:
sub create {
my $class = shift;
my $self = {};
return bless $self,$class;
}
当我创建一个对象时,我可以这样写:
my $object = create Object;
这是:
my $object = Object::create("Object");
唯一相当于该构造函数的调用?
答案 0 :(得分:5)
不,等效电话是
my $object = Object->create();
如果在没有箭头语法的情况下使用create
函数的完全限定名称,则不会通过Perl的OO方法调度,因此任何继承的方法都不起作用。
箭头语法优于“间接”create Object
语法。出于这个原因,请参阅this question。