2
から機能を取得し、実行します。LuaはC
doSomething(function()
print("Hello!")
end)
どのように私はそれを行うことができますCのAPIを使用して、私はその後、保存することができますdoSomethingのためのC Luaの関数を作成すること後で実行するために渡された関数?
から機能を取得し、実行します。LuaはC
doSomething(function()
print("Hello!")
end)
どのように私はそれを行うことができますCのAPIを使用して、私はその後、保存することができますdoSomethingのためのC Luaの関数を作成すること後で実行するために渡された関数?
スタック上の通常のエントリです。 lua_isfunction()
でそれをチェックし、luaL_ref()
を使用して参照を生成する(ガベージコレクタがそれを盗むことがないように)。そして、lua_topointer()
はこのオブジェクトへのポインタを格納するために、あなたが何をしたいかによって決まる。
完了したら、それはちょうどluaL_unref()
です。
ああ、あとは 'lua_call()'だけですが、http://www.lua.org/manual/5.1/manual.html#lua_callの詳細を読んでください。 – hroptatyr