我想在导入类时使用Luabind的属性。该定义是正确的,这个我相信,但是当我呼吁的属性,例如,如果它是一个字符串或数字将其打印出来,我得到这样的事情如何让Luabind属性起作用?
功能:009EC440
现在我不知道为什么会发生这种情况,但是我在互联网上四下张望,发现几个人有同样的问题。他们说,你应该建立Luabind与这些参数:
的bjam工具集= MSVC 9.0变异=调试线程=多链接=共享定义= _BIND_TO_CURRENT_VCLIBS_VERSION
现在,我已经试过了,但我仍然得到同样的错误。还有一点需要注意的是,我使用的是MSVC 2012,所以我试图用toolset = msvc-11.0来构建它,但是仍然无济于事。如果您不使用Boost构建来构建您的项目,我已经阅读过您需要定义LUABIND_DYNAMIC_LINK的信息,这也是我在包含Luabind之前完成的。这仍然导致了这个错误。我也试图自己构建Luabind,但遇到了连接它的麻烦,因为它引发了许多符号错误(我不确定在哪里定义LUABIND_DYNAMIC_LINK,所以如果有人知道这可能会解决问题)。有谁知道如何解决这个问题?
下面是声明的属性代码:像这样被访问
luabind::module(luaState)[
luabind::class_<Weapon>("Weapon")
.def(luabind::constructor<float, float>())
.def_readwrite("onFire", &Weapon::onFireFunc)
.def_readonly("modifier", &Weapon::modifier)
];
他们正在尝试,用的武器是因为它的构造函数声明的武器类的一个实例:
print(weapon.modifier)
weapon.onFire = onFire
静态链接的作品,但我想,使其与动态链接工作,全光照克这些参数:
的bjam工具集= MSVC-9.0变体=调试线程=多连杆=静态限定= _BIND_TO_CURRENT_VCLIBS_VERSION