当前位置: 首页 > news >正文

【Lua】元表常用属性

__index

触发条件:访问不存在的字段
参数:(table,key)
返回值:返回替代值
使用场景:实现默认值、继承、代理

__newindex

触发条件:设置不存在的字段

参数:(table,key,value)

返回值:无(抛错)

使用场景:拦截写操作、实现只读

__add

触发条件:实现自定义表的相加

参数:(a,b)

返回值:任意结果

使用场景:自定义表相加

__sub

触发条件:使用 -

参数:(a,b)

返回值:任意结果

使用说明:自定义表

__mul

触发条件:使用 *

参数:(a,b)

返回值:任意结果

使用说明:自定义表

__div

触发条件:使用 /

参数:(a,b)

返回值:任意结果

使用说明:自定义表

__mod

触发条件:使用 %

参数:(a,b)

返回值:任意结果

使用说明:自定义取模

__pow

触发条件:使用 ^

参数:(a,b)

返回值:任意结果

使用说明自定义运算

__unm

触发条件:使用负号行为例如-a

参数:(a)

返回值:任意结果

使用说明自定义负号行为

__concat

触发条件:使用..拼接

参数:(a,b)

返回值:字符串

使用说明自定义拼接行为

__len

触发条件:使用#运算符

参数:(a)

返回值:整数

使用说明自定义长度

__eq

触发条件:使用==比较

参数:(a,b)

返回值:布尔值

使用说明自定义相等判断

__lt

触发条件:使用<比较

参数:(a,b)

返回值:布尔值

使用说明自定义小于判断

__le

触发条件:使用<=比较

参数:(a,b)

返回值:布尔值

使用说明自定义小于等于判断

__call

触发条件:表像函数一样被调用时

参数:(table, ...)

返回值:任意

使用说明可以函数一样调用

__tostring

触发条件:使用 tostring()print

参数:(table)

返回值:字符串

使用说明自定义输出格式

__metatable

触发条件:防止修改

参数:字符串或任意值(不可是函数)

返回值:任意

使用说明隐藏

http://www.dtcms.com/a/305998.html

相关文章:

  • 【MySQL】MySQL索引—B树/B+树
  • 【选型】HK32L088 与 STM32F0/L0 系列 MCU 参数对比与选型建议(ST 原厂 vs 国产芯片)
  • 【LINUX网络】使用TCP简易通信
  • STM32 外部中断 和 定时器中断
  • 使用QT/C++完成的斗地主
  • ECharts从入门到精通:解锁数据可视化的魔法世界
  • 洛谷 P11230:[CSP-J 2024 T4] 接龙 ← 图论+动态规划
  • mac升级安装python3
  • MongoDB系列教程-第三章:PyMongo操作MongoDB数据库(1)—— 连接、基本CRUD操作
  • 代码随想录day50图论1
  • 代码随想录算法训练营第五十五天|图论part5
  • 【CF】Day115——杂题 (构造 | 区间DP | 思维 + 贪心 | 图论 + 博弈论 | 构造 + 位运算 | 贪心 + 构造 | 计数DP)
  • Python 程序设计讲义(43):组合数据类型——元组类型:元组的常用操作
  • KONG API Gateway中的核心概念
  • List 接口
  • 逻辑回归:从线性回归到分类决策的演化
  • Spark大数据分与实践笔记(第五章 HBase分布式数据库-04)
  • Java学习------Object类
  • Qt 与物联网(IoT)开发
  • (补题)小塔的饭
  • 算法-CodeTop(三)
  • PyTorch生成式人工智能(21)——归一化流模型(Normalizing Flow Model)
  • 【机器学习11】“分类算法“评估矩阵:从对数损失、AUC和ROC、混淆矩阵与分类报告等角度来评估算法
  • 第十九周-文档数据库MongoDB、消息队列和微服务
  • C++代码题部分(1)
  • 双功能预测模型开发:基于预训练模块与迁移学习的天然肽序列与SAFP修饰信息融合
  • 基于uni-app的血糖血压刻度滑动控件
  • uniApp实战六:Echart图表集成
  • uniapp-vue3来实现一个金额千分位展示效果
  • 《CLIP改进工作串讲》论文精读笔记