我有这样的Perl代码:如何在perl中探索一个对象?
use HTTP::Daemon;
use Data::Printer;
my $d = HTTP::Daemon->new(
LocalHost => "localhost",
LocalPort => 8080
) || die;
while (my $c = $d->accept) {
print ref $c;
print $c;
print %{*$c};
p $c;
print $c->sockhost . "\n"
}
返回的对象$ c为 “HTTP守护程序:: :: ClientConn = GLOB(0x85543d8)”。 原始代码表明,有一个sockhost成员,但我不知道其他成员可能有什么?我的印刷工作都没有帮助。即使meta::CPAN页面也是无声的,但我想要一个通用的代码解决方案来揭示什么是$ c是。作为参考,我有Perl v5.12.4。
http://perldoc.perl.org/UNIVERSAL.html有一些有趣的东西。像'can'方法一样。可能也值得一看autoload,这可能会让人明白为什么这很难。 – Sobrique