当前位置 : 主页 > 网络编程 > lua >

lua – 如何向表类型添加方法?

来源:互联网 收集:自由互联 发布时间:2021-06-23
如何向表类型添加方法?我正在尝试编写一个搜索表值的方法.到目前为止我有. function table:contains(value) for _, v in ipairs(self) do if v == value then return true end end return falseend 然而,当我尝试做以
如何向表类型添加方法?我正在尝试编写一个搜索表值的方法.到目前为止我有.

function table:contains(value)
  for _, v in ipairs(self) do
    if v == value then return true end
  end
  return false
end

然而,当我尝试做以下事情时.

t = {'four', 'five', 'six'}
t:contains('five')

我收到了错误.

stdin:1: attempt to call method 'contains' (a nil value)

有什么建议?

所有表都没有单个元表.与字符串和数字不同,每个表都有自己独立的元表.

只需为这些类型的东西创建一个自由函数而不是“成员”函数.并非所有东西都需要与OOP一起使用:等等.

网友评论