Perl:使用函数返回类的新实例

时间:2014-03-26 14:08:03

标签: java perl function constructor

如何在perl中返回新实例,例如在Java中:

public AClass getAClass() {
   return new AClass();
}

2 个答案:

答案 0 :(得分:0)

sub getAClass {
   return new AClass();
}

但为什么呢

my $o = AClass->getAClass();

而不是

my $o = AClass->new();

答案 1 :(得分:0)

避免使用间接对象表示法。使用

AClass->new(...)

而不是

new AClass(...)

原因是前者总是做你期望的,而后者是模糊的语法 - 它代表前一个代码,还是它真的意味着这个?

new(AClass(...))

解析器可能猜错了解决这种歧义的错误意图。所以你应该避免它 - 改为使用直接箭头符号。