[英]Perl: Return new instance of the class with the function
如何在perl中返回新实例,例如在Java中:
public AClass getAClass() {
return new AClass();
}
sub getAClass {
return new AClass();
}
但是为什么呢
my $o = AClass->getAClass();
代替
my $o = AClass->new();
避免使用间接对象表示法。 采用
AClass->new(...)
代替
new AClass(...)
原因是前者总是按照您的期望进行操作,而后者则是模棱两可的语法-它代表前者的代码,还是真的意味着这个?
new(AClass(...))
解析器可能猜测出解决此歧义的错误意图。 因此,您应避免使用它-使用直接箭头符号代替。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.