我什至从perldoc
和StackOverflow
都阅读了说明。但是有一点困惑。
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
中使用吗?在
use
和require
之间还有另一个区别的Beisdes吗?在Google上进行了大量讨论,但我仅了解上述几点。
请帮我其他几点。
最佳答案
我认为您自己在第二点编写的代码可以自我解释两者之间的区别...
在实践中,“使用”对模块执行“要求”,然后自动导入模块,使用“要求”代替,该模块仅是必须存在的,但是您可以在需要时自由导入...
鉴于以上所述,结果很明显,第5点的问题毫无意义,因为“require”不导入任何内容,因此无需指定要加载的模块零件,您可以在需要时有选择地加载所需的零件将执行导入操作...
此外,请记住,虽然“use”在编译时(Perl编译阶段)起作用,“require”在运行时起作用,基于此原因,使用“require”时,只有在和/或当真正需要的时候。
关于perl - 使用和需求之间的区别(我列出了区别,需要知道还有什么区别),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18231350/