我对以下代码的理解正确吗?

时间:2019-11-06 14:34:13

标签: lua

假设我有一个名为myFileName.lua的文件,其中包含以下代码。

internal_data

我的理解如下:源是一个表结构。 function Set(source) set = {} if source then for i,v in ipairs(source) do set[v] = true end end return set end return Set 表示,如果表if source then不为空,则执行某些操作。第一个返回集意味着返回表集作为函数集的返回值。第二个返回Set表示将Set函数作为此文件myFileName.lua的返回值。

然后,在文件main.lua中,我有 设置= require('lib / myFileName')

这意味着,将返回文件myFile.lua中的Set函数并为其指定名称Set,以便我可以在文件main.lua中使用它。它是否正确?任何意见,不胜感激。

1 个答案:

答案 0 :(得分:0)

在文件内部,Set是一个函数。 set是一个表。 if source then行将仅确保source不是nilfalse。因此即使源{}为空,它也会输入。

其余所有内容都是正确的,要求main中的文件可以使您访问Set函数。

有关更多信息,您可以read further about logical expressions in Lua here