我可以有这样的构造函数:
sub create {
my $class = shift;
my $self = {};
return bless $self,$class;
}
Run Code Online (Sandbox Code Playgroud)
当我创建一个对象时,我可以这样写:
my $object = create Object;
Run Code Online (Sandbox Code Playgroud)
这是:
my $object = Object::create("Object");
Run Code Online (Sandbox Code Playgroud)
唯一相当于那个构造函数的调用?
不,等效的电话是
my $object = Object->create();
Run Code Online (Sandbox Code Playgroud)
如果在create没有箭头语法的情况下使用函数的完全限定名称,则不会通过Perl的OO方法调度,因此任何继承的方法都不起作用.
箭头语法优于"间接" create Object语法.由于这个原因,请看这个问题.