我有一个带有返回文件句柄的方法的对象,我想从该句柄中读取。以下不起作用,因为方法调用的右尖括号被解释为输入阅读器的右尖括号:
my $input = <$object->get_handle()>;
这被解析为:
my $input = ( < $object- > ) get_handle() >;
这显然是一个语法错误。有什么方法可以在角度运算符中执行方法调用,还是需要像这样将其分为两个步骤?
my $handle = $object->get_handle();
my $input = <$handle>;
最佳答案
你可以考虑拼写 <
...
>
如 readline(
...
)
相反,它通过使用很好的正则语法而不是特殊情况来避免这个问题。或者您可以将它分配给一个标量。你的选择。
关于perl - 如何从在 Perl 中返回文件句柄的方法中读取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2672183/