unless defined(&dl_load_file);
以上看起来对我来说很模糊,但确实有效。
Perl如何知道是否在此处拨打dl_load_file
?
答案 0 :(得分:4)
这只是Perl语法中的一个特例。如果您有defined(&identifier)
或defined &identifier
,它会检查是否存在名为identifier
的子例程而不调用它,即使&identifier
通常会调用子例程。
defined &identifier()
调用子例程,然后测试其返回值。标识符后的parens使其成为函数调用。
答案 1 :(得分:0)
我认为没有电话 - 只是检查是否定义了该功能
Perl解释器在Symbol Tables
的帮助下知道这一点