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

  • 相关阅读:
    1082 射击比赛 (20 分)
    1091 N-自守数 (15 分)
    1064 朋友数 (20 分)
    1031 查验身份证 (15 分)
    1028 人口普查 (20 分)
    1059 C语言竞赛 (20 分)
    1083 是否存在相等的差 (20 分)
    1077 互评成绩计算 (20 分)
    792. 高精度减法
    791. 高精度加法
  • 原文地址:https://www.cnblogs.com/DOGame/p/8720378.html
Copyright © 2011-2022 走看看