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 元方法用于修改表的输出行为

  • 相关阅读:
    分布式缓存
    分布式事务
    数据库系列-分库分表
    消息队列系列-简介
    JAVA系列-引用
    生产环境CPU占用过高分析
    技术书单(部分)
    GitHub的强大搜索功能简介
    VS2019 community版本下载Extension太慢解决方案
    Python2同时输出中文和变量时中文乱码
  • 原文地址:https://www.cnblogs.com/DOGame/p/8720378.html
Copyright © 2011-2022 走看看