Lua实现__add方法重载示例

 更新时间:2015年04月22日 09:11:47   投稿:junjie  
这篇文章主要介绍了Lua实现__add方法重载示例,本文直接给出实现代码,需要的朋友可以参考下

实现加法(__add)重载代码示例:

复制代码 代码如下:

do
 local Infor_class = {};

 function Infor_class.create(_t)
  local newTable = {};
  setmetatable(newTable, Infor_class); --set the metatable
  for i, v in pairs(_t) do
   newTable[i] = v;
  end
  return newTable;
 end

 function Infor_class.sum(c1, c2)
  if(#c1 ~= #c2) then
   return nil;
  else
   local result = {};
   local len = #c1;
   for i = 1, len do
    result[i] = c1[i] + c2[i];
   end
   print("result");
   return result;
  end
  print("nil");
  return nil;
 end

 Infor_class.__add = Infor_class.sum --override the _add

 r1 = Infor_class.create{3, 4}
 r2 = Infor_class.create{5, 6};

 result = r1 + r2;
 print(unpack(result));
end

相关文章

  • 在Mac OS中安装Lua的教程

    在Mac OS中安装Lua的教程

    这篇文章主要介绍了在Mac OS中安装Lua的教程,尽管基于Unix的Mac OS并没有集成Lua解释器,但安装起来依然super easy:)需要的朋友可以参考下
    2015-07-07
  • Lua面向对象之类和继承

    Lua面向对象之类和继承

    这篇文章主要介绍了Lua面向对象之类和继承,本文讲解了Lua面向对象最基本的知识类和继承,需要的朋友可以参考下
    2014-09-09
  • Lua教程(二):语法约定

    Lua教程(二):语法约定

    这篇文章主要介绍了Lua教程(二):语法约定,本文讲解了lua保留关键字、使用的标点符号、字符串、ASCII 码等,需要的朋友可以参考下
    2015-03-03
  • Lua中os库详细介绍

    Lua中os库详细介绍

    这篇文章主要介绍了Lua中os库详细介绍,本文详细讲解了OS库中的常用方法,分别对参数做出了解释,有的给出了示例,需要的朋友可以参考下
    2014-11-11
  • Lua获取网络时间(获取时间同步服务器的时间)

    Lua获取网络时间(获取时间同步服务器的时间)

    这篇文章主要介绍了Lua获取网络时间(获取时间同步服务器的时间),本文使用Lua作为客户端获取网络上的一些授时服务提供商的时间,需要的朋友可以参考下
    2015-04-04
  • Lua中table里内嵌table的例子

    Lua中table里内嵌table的例子

    这篇文章主要介绍了Lua中table里内嵌table的例子,本文同时讲解了如何访问内嵌table方法的例子,需要的朋友可以参考下
    2015-04-04
  • Luvit像Node.js一样写Lua应用

    Luvit像Node.js一样写Lua应用

    今天小编就为大家分享一篇关于Luvit像Node.js一样写Lua应用,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Lua中关于求模与求余的区别介绍

    Lua中关于求模与求余的区别介绍

    这篇文章主要介绍了Lua中关于求模与求余的区别介绍,我觉得很多人搞不清楚这两个概念的区别,刚好在翻译lua手册时遇到%与math.fmod这两个操作,顺便做一下说明吧,需要的朋友可以参考下
    2015-04-04
  • vs2012 error c4996: This function or variable may be unsafe

    vs2012 error c4996: This function or variable may be unsafe

    这篇文章主要介绍了vs2012 error c4996: This function or variable may be unsafe,需要的朋友可以参考下
    2015-04-04
  • Lua 数学库的所有函数功能作用一览

    Lua 数学库的所有函数功能作用一览

    这篇文章主要介绍了Lua 数学库的所有函数功能作用一览,本文罗列了lua数学库的所有函数,并对每个函数的功能作用做了简短描述,需要的朋友可以参考下
    2015-06-06

最新评论