lua --- dofile、loadfile、require

本文详细解析了Lua语言中loadfile、dofile及require三个函数的功能差异。loadfile负责编译代码为中间码并返回,dofile则直接运行loadfile返回的函数,而require不仅具备dofile的功能,还支持目录搜索与防止重复加载。了解这些差异有助于更高效地使用Lua进行编程。

loadfile:

1>编译代码成中间码并且返回编译后的chunk作为一个函数,而不执行代码

2>在发生错误的情况下,不会抛出异常,但会返回nil和错误信息

3>运行一个文件多次的话,只需要编译一次,但可多次运行

 

dofile:

1>是对loadfile的一层包装,根据loadfile的返回函数运行一遍

2>运行一个文件多次的话,每次都需要编译

 

require:

1>粗略的说,require 与 dofile 一样,但是都两点差别

a.require会搜索目录加载文件

b.require会判断是否文件已经加载避免重复加载同一文件

 

参考:《Lua程序设计第二版》

转载于:https://www.cnblogs.com/luguoshuai/p/10058875.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值