C++ Luabind和类实例
我正在开发一个数据驱动的游戏引擎,我正在寻求集成lua 我似乎在使用luabind将当前组件类的实例绑定到lua元表时遇到了问题 下面是有问题的代码:C++ Luabind和类实例,c++,lua,luabind,C++,Lua,Luabind,我正在开发一个数据驱动的游戏引擎,我正在寻求集成lua 我似乎在使用luabind将当前组件类的实例绑定到lua元表时遇到了问题 下面是有问题的代码: void BaseScriptComponent::createScriptObject() { LuaStateManager* pStateManager = LuaStateManager::get(); assert(pStateManager != nullptr); assert(luabind::type(m
void BaseScriptComponent::createScriptObject()
{
LuaStateManager* pStateManager = LuaStateManager::get();
assert(pStateManager != nullptr);
assert(luabind::type(m_scriptObject) != LUA_TNIL);
// Get meta table
luabind::object metaTableObject = pStateManager->getGlobalVars()[METATABLE_NAME];
assert(luabind::type(metaTableObject) != LUA_TNIL);
// Set __object to reference this class instance.
// Compilation failure due to this
metaTableObject["__object"] = this;
// Set meta table
luabind::setmetatable(m_scriptObject, metaTableObject);
}
编译器错误为:
undefined reference to `bool luabind::get_back_reference<BaseScriptComponent*>(lua_State*, BaseScriptComponent* const&)'
bool luabind::get_back_reference(lua_State*,BaseScriptComponent*const&)的未定义引用
非常感谢您的帮助。您能出示您的模块/班级的注册码吗?另外,我认为您的代码在使用luabind注册对象时非常不寻常,或者至少我不完全确定您试图用这段代码实现什么。