尝试对字段“x”(表值)执行算术运算

Posted

技术标签:

【中文标题】尝试对字段“x”(表值)执行算术运算【英文标题】:Attempt to perform arithmetic on field 'x' (a table value) 【发布时间】:2015-04-05 17:08:11 【问题描述】:

我正在使用lua-alchemy,并且我正在以这种方式在我的 AS3 代码中设置一个全局变量:

_lua.setGlobal("map", _map);

其中 _map 是一个对象,其中包含以下函数:

public function get x():int

    return 10;

如果那么我尝试在 Lua 中做这样的事情

local a = map.x + 1

我收到以下错误:

Lua script failed: luaDoString:21: attempt to perform arithmetic on field 'x' (a table value)

有谁知道为什么会这样,我该如何解决?

编辑:

当我打印type(map.id) 时,它会打印table...不应该打印number吗?

【问题讨论】:

您是否尝试过遍历表的成员以查看它们是什么?可能成对使用 for k,v (map.x)? 【参考方案1】:

我发现了我的错误。根据this page,我必须使用as3.tolua(map.x)将其转换为正确的类型。

【讨论】:

以上是关于尝试对字段“x”(表值)执行算术运算的主要内容,如果未能解决你的问题,请参考以下文章

Lua 错误“尝试对字符串值执行算术运算”

JavaScript运算符

如何对where子句中的数据字段和聚合函数进行算术运算?

用于算术运算的 MongoDB 聚合 - 子文档字段

JavaScript运算符

C 指针的算术运算