0

所以我知道特殊的 UNIVERSAL 类将被视为创建所有其他对象的基类。所以如果 Perl 遍历继承层次后没有找到特定的方法,它会在 UNIVERSAL 类中查看是否可以找到该方法。但是,当您创建发行版时,不会创建 UNIVERSAL.pm 包。此外,如果没有 UNIVERSAL.pm,UNIVERSAL 方法 'DOES' 和 'can' 已经存在......因此,我不确定是否应该将 UNIVERSAL 方法写入随机包中,如下所示:

sub UNIVERSAL::nicemethod{
    launch_teh_missles();
}

或者我应该创建一个单独的通用包和 .pm 文件?什么被认为是最佳实践?

4

1 回答 1

1

您可以像添加任何其他包一样向 UNIVERSAL 添加新方法:

package
   UNIVERSAL;  # Line break to fool CPAN indexer

sub nice_method {
   ...
}
于 2012-12-06T09:08:10.303 回答