lua元表
来源:互联网 发布:迪杰斯特拉算法 编辑:程序博客网 时间:2024/05/01 20:44
Lua中每个值都可具有元表。 元表是普通的Lua表,定义了原始值在某些特定操作下的行为。你可通过在值的原表中设置特定的字段来改变作用于该值的操作的某些行为特征。例如,当数字值作为加法的操作数时,Lua检查其元表中的"__add"字段是否有个函数。如果元表重载了该元方法,Lua则调用该加法。
setmetatable(只能用于table)和getmetatable(用于任何对象)
语法:setmetatable (table, metatable),对指定table设置元表metatable 【如果元表(metatable)中存在__metatable键值,setmetatable会失败】
语法:tmeta = getmetatable (tab),返回对象的元表(metatable) 【如果元表(metatable)中存在__metatable键值,当返回__metatable的值】
我们称元表中的键为事件(event),称值为元方法(metamethod)。前述例子中的事件是"add",元方法是执行加法的函数。
可通过函数getmetatable查询任何值的元表。
可通过函数setmetatable替换表的元表。不能从Lua中改变其他类型的元表(除了使用调试库);必须使用C API才能做到。
lua查找表元素过程:http://blog.csdn.net/xocoder/article/details/9028347
0 0
- LUA元表、元操作
- Lua 元表 元方法
- lua 元表
- lua元表学习
- lua元表
- lua元表
- lua元表
- lua元表学习
- lua元表
- lua元表
- lua的元表
- lua元表
- Lua无名元表
- lua元表
- lua元表理解
- lua元表
- lua元表介绍
- Lua -- 元表(Metatable)
- Kmeans聚类算法-二维度数组(Java实现)
- 网页语法高亮jquery插件SyntaxHighlighter使用教程
- 高功耗的USR-WIFI232-2b的sta+ap配置可以使手机连上互联网
- HDU 3830 - Checkers(二分LCA)****
- 中国剩余定理 poj1006
- lua元表
- 安装post man
- Cocos2d-js 3.2 技能冷却按钮的简单实现
- C语言中的异常处理机制
- c:foreach标签使用详解
- ios软件开发 json格式字符串转字典,字典转json格式字符串
- 《SICP》读书笔记--Chapter 1 Building Abstraction with Procedures
- 多线程系列一——何为线程与java中线程的创建
- 编写更好的jQuery代码