如何迭代 luabind 类(在 lua 或 c++ 中)?
如何迭代 luabind 类(在 lua 或 c++ 中)?
class 'A'
function A:__init()
-- Does not work
-- self is userdata, not a table
for i, v in pairs(self) do
end
end
谢谢
How to iterate through luabind class (in lua or in c++)?
class 'A'
function A:__init()
-- Does not work
-- self is userdata, not a table
for i, v in pairs(self) do
end
end
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您尝试查找有关变量的反射信息(方法列表等),则可以使用
class_info()
和class_names()
函数。注意: 据我所知,这些函数没有文档记录,但它们至少存在于 Luabind 0.9 中。使用风险自负。
要在 Lua 代码中使用这些 Luabind 函数,您需要先绑定它们。示例:
然后从您的 Lua 代码中,您可以内省一个变量:
您还可以获取 Luabind 知道的所有类的列表:
If you're trying to look up reflection information about a variable (list of methods, etc.) then you can use the
class_info()
andclass_names()
functions.Note: These functions aren't documented as far as I can tell, but they at least exist in Luabind 0.9. Use at your own risk.
To use these Luabind functions in your Lua code, you need to bind them first. Example:
Then from your Lua code, you can introspect a variable:
You can also get a list of all the classes Luabind knows about: