привязка — обратные вызовы LuaBridge (передача функций lua в c ++)

Как передать функции из LUA в C ++ с помощью Luabridge (1.0.2)

local Callback=function()
print("Inside Callback function!");
end

А затем передать этот обратный вызов в C ++:

self.Background:On("Click",Callback)

«Клик» — это const std :: string&, но как вы определяете Callback как функцию? Я пробовал несколько подходов (void *, std :: function), но ни один из них не работает правильно.

1

Решение

Догадаться! Если вы пытаетесь передать функции, LuaBridge 2.0 (в ветке разработки) решает эту проблему, представляя LuaRef.

Ваша функция будет выглядеть так:

void DisplayObject::On( const std::string& Param1,LuaRef Param2 );

тогда просто вызовите функцию так:

Param2();

https://github.com/vinniefalco/LuaBridge/tree/develop

5

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]