lua - 功能差异
问题描述
我只是好奇这两种不同类型的功能之间是否有区别。
function PrintHello()
return print("Hello")
end
和
PrintHello = function()
return print("Hello")
解决方案
除了您在第二个函数中缺少结尾之外,两个片段都是等效的。
function PrintHello ()
print("Hello")
end
翻译成
PrintHello = function ()
print("Hello")
end
您还会在手册中发现本地功能有所不同。
local function a() end
翻译成
local function a;
a = function () end
这允许 a 引用自身,例如在递归调用中。
而不是return print("Hello")
简单地写print("Hello")
. print
没有返回值。
推荐阅读
- c++ - 如何在 GNU Global gtags.conf 文件中指定环境变量
- python - 使用 Python 3.7,从 Oracle Business Intelligence WSDL 获取数据
- python - 在无头模式下通过 Google Chrome 下载文件
- excel - 如何在不使用 Workbook_Open 的情况下打开某一行的工作簿?
- powerapps - 如何为 SharePoint 列表中的每个商店创建包含上次访问日期的集合
- python - 是否可以控制如何在 python 中执行函数?
- javascript - 如何重构这个高阶函数
- c# - 如何在 Dialogflow Fulfillment 中添加表格卡片?
- unity3d - 如何启动和停止子系统?
- r - 无法安装包:“未定义对 dtrsm_ 的引用”