您的位置:首页 > 编程语言 > Lua

Lua学习之Lua的函数解析(待补充)

2015-10-07 15:40 337 查看
坚持 成长 每日一篇

Lua函数

load

加载一个代码块

代码

交互模式运行代码:

> f = load("print(100) print(200)")
> f()
100
200


loadfile

加载整个文件代码为一个代码块,但是不执行,这个是与dofile的本质区别

有一个m.lua文件代码如下

function add()
print(100)
end

function abb()
print(102)
end


交互模式运行代码:

> path = "/Users/chris/Documents/工作备份资料/工作过程学习/开发Demo大全/IOSDemo/Lua的测试文件/Lua调C函数/libLua/m.lua"
> f = assert(loadfile(path)) --assert配合使用方便测试错误
> f
function: 0x7faf0a600860   --说明是一个代码块
> add()  --由于f代码块没有执行,add函数不存在
stdin:1: attempt to call a nil value (global 'add')
stack traceback:
stdin:1: in main chunk
[C]: in ?
> f()   --执行代码块
> add() --现在运行add存在
100
> abb() --执行了lua文件里的所有代码所以abb也成功添加了
102


dofile

直接运行某个文件里的代码

交互模式运行代码:

> path = "/Users/chris/Documents/工作备份资料/工作过程学习/开发Demo大全/IOSDemo/Lua的测试文件/Lua调C函数/libLua/m.lua"
> dofile(path)
> add()
100
> abb()
102
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: