しばらくの間、グーグルグーグルで何が起こっているのか分かりません。 私はluaScriptというクラスを持っています。これは現在の状態では、現在実行中のスクリプトを終了したり一時停止したりすることができないluaスクリプト(Surprising!知っています)を処理します。Lua C++ lib sethook:フック関数argにエラーが発生しました
私は何かが起こるたびにコードを実行できるフックについて知りました。 また、それらを使用する方法を示す2009年からのクールなstackoverflow質問が見つかりました。
コードがコピーされ、フックが完了し、コンパイルしようとしましたが、何もありません。 何も私は渡された関数(void hookRoutine(lua_State *L, lua_Debug *ar)
)はタイプlua_Hook
との互換性がありませんでしたというエラー(lua_Hook
は、私の知る限りでは、私はそれを与えたまさにあるtypedef void (*lua_Hook) (lua_State *L, lua_Debug *ar);
として定義されているので、私は総BSを見つける。)
これは私がコピーしたコードです: lua_sethook(mL, hookRoutine, LUA_MASKCOUNT, 0);
mL
はルアインスタンス、hookRoutine
はフックです。私がこれまで試してみました
もの:私は完全にこれに困惑していますし、時間グーグルされている
lua_Hook hookRoutine
lua_sethook(mL, &hookRoutine, LUA_MASKCOUNT, 0);
lua_sethook(mL, lua_Hook(hookRoutine), LUA_MASKCOUNT, 0);
、誰かが私が作った愚かなエラーの種類を説明してくださいできますか?