Lua 在运行时获取 class 对象名称
Lua get class name of object at runtime
我想知道是否有办法在运行时获取 class 对象名称。
我的意思是这样的:
这是我非常简单的脚本
person=TPerson:new()
我想在我的应用程序中(在 delphi 中)获取 "TPerson"
我用 lua 调试信息试过了,但我知道要得到的是函数 "new" 但我需要得到 class "TPerson"
lua_getstack(l,0,PL_Debug);
lua_getfield(l,LUA_GLOBALSINDEX,'f');
lua_getinfo(l,'n',PL_Debug);
nameOfCurrnetFunction:=PL_Debug.name; // here is stored "new"
所以可以得到 class 名字吗?
谢谢
根据官方说法,您在 Lua 中没有 类,因此您的对象类型始终是 table。当然,您可以自由实现一些功能,returns 您可以将自定义类型名称作为字符串。 Lua-明智的是,它将保持 table 艰难
我想知道是否有办法在运行时获取 class 对象名称。 我的意思是这样的: 这是我非常简单的脚本
person=TPerson:new()
我想在我的应用程序中(在 delphi 中)获取 "TPerson" 我用 lua 调试信息试过了,但我知道要得到的是函数 "new" 但我需要得到 class "TPerson"
lua_getstack(l,0,PL_Debug);
lua_getfield(l,LUA_GLOBALSINDEX,'f');
lua_getinfo(l,'n',PL_Debug);
nameOfCurrnetFunction:=PL_Debug.name; // here is stored "new"
所以可以得到 class 名字吗? 谢谢
根据官方说法,您在 Lua 中没有 类,因此您的对象类型始终是 table。当然,您可以自由实现一些功能,returns 您可以将自定义类型名称作为字符串。 Lua-明智的是,它将保持 table 艰难