zoukankan      html  css  js  c++  java
  • Lua 特性

    1.轻量级:C语言编写 源码开放,编译后仅100多K,是一种比较好的嵌入式语言;

    2.可扩展性:Lua提供易于使用的拓展接口和机制;

    3.支持面向过程,自动内存管理;

    4.Lua 数据类型:nil,boolean,number,string,userdata,function,table;

    5.pairs 和ipairs 区别:

    pairs:迭代table,遍历表中所有的KEY,可以返回nil;

    ipairs:迭代数组,不能返回nil 遇到nil 则退出;

    Lua 元表:使用元表我们可以定义Lua如何计算两个table的相加操作a+b

    当Lua试图对两个表进行相加时,先检查两者之一是否有元表,之后检查是否有一个叫"__add"的字段,若找到,则调用对应的值。"__add"等即时字段,其对应的值(往往是一个函数或是table)就是"元方法"

    _newindex 元方法

    __newindex 元方法用来对表更新,__index则用来对表访问 。

    当你给表的一个缺少的索引赋值,解释器就会查找__newindex 元方法:如果存在则调用这个函数而不进行赋值操作。

    __call 元方法

    __call 元方法在 Lua 调用一个值时调用。

    __tostring 元方法

    __tostring 元方法用于修改表的输出行为

  • 相关阅读:
    C++中pair的用法
    DFS例题:力扣200:岛屿数量
    DFS例题:力扣695:岛屿的最大面积
    DFS深度优先遍历
    java AQS源码分析
    spring实现事务原理
    java常见并发面试题目+示例代码
    java并发锁
    ThreadPoolExecutor
    线程通信
  • 原文地址:https://www.cnblogs.com/DOGame/p/8720378.html
Copyright © 2011-2022 走看看