我什至从perldocStackOverflow都阅读了说明。但是有一点困惑。

  • use通常在编译时加载模块,而require在运行时加载
  • use仅调用内置的导入函数,而require需要分别调用导入模块,例如
    BEGIN {
        require ModuleName;
        ModuleName->import;
    }
    
  • 如果我们想偶尔加载更大的模块,则使用require
  • use在较早的状态抛出异常,而当我遇到问题
  • require抛出异常
  • 使用use,我们可以选择性地加载过程,但并非全部,但很少
    use Module qw(foo bar) # it will load foo and bar only
    

  • 也可以在require中使用吗?

    userequire之间还有另一个区别的Beisdes吗?

    在Google上进行了大量讨论,但我仅了解上述几点。
    请帮我其他几点。

    最佳答案

    我认为您自己在第二点编写的代码可以自我解释两者之间的区别...

    在实践中,“使用”对模块执行“要求”,然后自动导入模块,使用“要求”代替,该模块仅是必须存在的,但是您可以在需要时自由导入...

    鉴于以上所述,结果很明显,第5点的问题毫无意义,因为“require”不导入任何内容,因此无需指定要加载的模块零件,您可以在需要时有选择地加载所需的零件将执行导入操作...

    此外,请记住,虽然“use”在编译时(Perl编译阶段)起作用“require”在运行时起作用,基于此原因,使用“require”时,只有在和/或当真正需要的时候。

    关于perl - 使用和需求之间的区别(我列出了区别,需要知道还有什么区别),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18231350/

    10-16 06:16