6

我创建了一个表并分配了一个lua_pushcfunction名为的方法mytable:myfunction()。在不同的(回调)上下文中,它必然会myfunction在 Lua 脚本中被覆盖。由于某些原因,如果我myfunction从 C 主机调用,我需要知道是否myfunction仍然是 c 函数或被脚本替换。

如果 C 方法仍然附加或被一些 Lua 代码替换,有没有办法测试(来自 C)?

4

2 回答 2

7

是的,您可以使用lua_iscfunction.

于 2013-08-12T11:21:42.773 回答
0

另一种可能性是使用lua_tocfunction. 这使您还可以检查您返回的 C 函数是否是您期望的。

于 2013-08-12T20:21:22.410 回答