Lua中doFile和require的区别是什么?

在 Lua 和 Torch 中,doFile 和 require 有哪些不同?什么时候调用一个而不调用另一个?什么时候一个能够工作但另一个不能?(我正在使用 Lua 5.1,torch7)。

点赞
用户646619
用户646619

dofile 加载并立即执行一个文件。

require 更为复杂;它维护了一个已加载模块及其返回结果的表格,以确保不会加载相同的代码两次。它还维护了一个模块加载器列表,处理加载模块,其中一个可从 dll/ so 文件中加载。

如果只是加载函数,您可能需要使用 require,以避免重复。

2015-06-30 21:54:03