lua 真是很灵活, 可以模拟很多其他语言的高级特性, 今天学习了算术类的元方法这一块, 在此记录。
every thing is table in lua
我觉得对table的运算术计算叫成运算符重载更合适
lua里有这几种运算可以重载
__add --> +
__mul --> *
__sub --> -
__div --> %
__unm --> 负数
__pow --> 幂
步骤是这样的
Set = {} --普通表
local mt={} --元表
--建元表
function Set.new (t)
local set = {}
setmetatable(set,mt)
for _, l in ipairs(t) do set[l] = true end
return set
end
--重载方法
function Set.union(a,b)
...
end
--从元表建新表
s1 = Set.new{10, 20, 30, 50}
s2 = Set.new{30, 1}
--给元表重定向运算符
mt.__add=Set.union
--执行计算
s3 = s1 + s2
这样即可对两个表执行并集运算了, 可以自己打印结果看看
#end
分享到:
相关推荐
lua编程技巧 lua数据结构 metamethods 关于lua实现类 lua运算符重载 weak表
lua 热重载机制。
Lua 语言进阶教程 - 语法基础和运算符重载 Lua 语言是一种轻量级的脚本语言,广泛应用于游戏开发、嵌入式系统和其他领域。为了深入掌握 Lua 语言,需要了解其语法基础和运算符重载。 Lua 语法基础 Lua 语言的语法...
Lua模块,一个类的模拟工具,加上演示示例,完全模拟了类的继承,静态,公有私有等,以及函数重载;
所有版本LUA源码 lua-5.3.5 lua-5.3.4 lua-5.3.3 lua-5.3.2 lua-5.3.1 lua-5.3.0 lua-5.2.4 lua-5.2.3 lua-5.2.2 lua-5.2.1 lua-5.2.0 lua-5.1.5 lua-5.1.4 lua-5.1.3 lua-5.1.2 lua-5.1.1 lua-5.1 lua-5.0.3 lua-...
今天小编就为大家分享一篇关于Lua基础之运算符的使用示例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
Lua 基础教程(六)运算符
ios版本将lua加密成luac
lua 反编译工具 用于学习lua 反编汇 游戏lua 解密
内含luaDll,luacom以及luaiconv源码。luaDll和luaiconv直接打开sln在Visual studio中即可进行编译。luacom可使用nmake进行编译。也可直接使用已经生成了的dll.
lua5.3(32位/64位)windows 预编译(exe/DLL) adding: lua5.3.5-x86/lua.exe (in=14336) (out=7311) (deflated 49%) adding: lua5.3.5-x86/lua.o (in=24873) (out=9654) (deflated 61%) adding: lua5.3.5-x86/lua...
LUAC 脚本加密 , 用于LUAC 脚本反编译,有用得同学可以下载,
- 支持新的运算符 ^^ 表示 XOR - luaL_traceback 函数现在会调用 panic 函数,而不是默认的错误处理函数 - 修复了 luaL_testudata 函数在错误情况下返回错误指针的漏洞 - 修复了 setlocale 函数在某些情况下崩溃...
JS和LUA交互,主要是JS和LUA交互实现模版,可以作为参考
* 运算符:lua语言提供了多种运算符,包括算术运算符、比较运算符、逻辑运算符等。 * 控制结构:lua语言提供了多种控制结构,包括if语句、for循环、while循环等。 * 函数:lua语言支持函数的定义和调用,函数可以...
lua解密工具.apk是一款用于解密Lua脚本的工具,适用于Android操作系统。Lua是一种轻量级的脚本语言,常用于游戏开发、嵌入式系统和网络编程等领域。通过使用该工具,开发者可以对Lua脚本进行反编译、编辑和重新编译...
lua for windows其实是一整套Lua的开发环境.Lua for Windows 为 Windows 系统下提供了 Lua 脚本语言的开发和运行环境。Lua 是一个小巧的脚本语言。作者是巴西人。该语言的设计目的是为了嵌入应用程序中,从而为应用...
1、简单工厂模式lua实现 2、工厂方法模式lua实现 3、原型模式lua实现 4、建造者模式lua实现 5、单例模式lua实现 6、抽象工厂模式lua实现 结构型模式 1、装饰模式lua实现 2、代理模式lua实现 3、外观模式lua实现 4、...
包含 LUA取参数数目、LUA取参数类型、LUA取参数值、LUA加返回值、LUA扩展栈。后续版本可能会根据需要进行适当的扩充。LUA(数据类型)。LUA虚拟机,提供对LUA代码进行编译/解释执行的功能。LUA类库常量(常量)。LUA...