【发布时间】:2010-04-20 02:37:20
【问题描述】:
我有一个带有返回文件句柄的方法的对象,我想从该句柄中读取。以下不起作用,因为方法调用的右尖括号被解释为输入阅读器的右尖括号:
my $input = <$object->get_handle()>;
解析为:
my $input = ( < $object- > ) get_handle() >;
这显然是一个语法错误。有什么方法可以在角度运算符中执行方法调用,还是需要像这样将其分成两个步骤?
my $handle = $object->get_handle();
my $input = <$handle>;
【问题讨论】:
-
或许最好的解决方案是
use IO::File,然后把句柄当成对象? -
readline是对所提出问题的最佳解决方案,但我决定从现在开始对我的 IO 使用 OO。use IO::File。所以我真正的答案是$object->get_handle->getline。
标签: perl syntax filehandle