Perl模块中的ref函数的另一个哈希值

时间:2019-03-07 14:27:05

标签: perl methods reference

我有一个perl对象,其中包含一个编解码器(方法)的哈希值。

以下代码起作用以调用该方法:

my $c2 = $self->{Formatter}->{"ENOTE:Final"}($self, $e);

我似乎不得不以这种方式称呼它很奇怪。是否有另一种更好的语法呢?我不会让你厌倦什么都行不通的。

谢谢。

-E

1 个答案:

答案 0 :(得分:3)

如果您正在寻找更多面向对象的语法,

my $method = $self->{Formatter}{"ENOTE:Final"};
my $c2 = $self->$method($e);