主页 > 知识库 > Lua实现__add方法重载示例

Lua实现__add方法重载示例

热门标签:AI电销 地方门户网站 网站排名优化 Linux服务器 百度竞价排名 铁路电话系统 呼叫中心市场需求 服务外包

实现加法(__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

标签:兰州 铜川 衡水 崇左 湖南 黄山 湘潭 仙桃

巨人网络通讯声明:本文标题《Lua实现__add方法重载示例》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266