問題タブ [luaplus]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
261 参照

c++ - LUAPlus を使用して Lua テーブル関数を C++ 変数にバインドする

LUAPlus を使用して、Lua テーブル関数を C++ 変数にリンクしたいと考えています。これまでのところ、Web で見つけた情報を使用して、 を使用してテーブル関数をDoString("tableName:functionName")呼び出すことができましたが、変数を介して関数を呼び出せるようにしたいと考えています。その可能性はわかっていますが、何が間違っているのかわかりません。

私が追加したコードでは、正常にpLuaState->DoString("table1:prints()")動作し、必要に応じてすべてを出力します。関数を取得して func 変数を使用して呼び出そうとすると、プログラムがクラッシュします。

エラーメッセージ

アサーションに失敗しました: 0、ファイル .../luafunciton.h、41 行目

"print("in Prints")" を除く Lua の print() 関数のすべての印刷を削除すると、すべて正常に動作します。これに基づいてGetByName("functionName")、親テーブルへの参照を含まない関数を返すと仮定します。そして、これは私が立ち往生するところです。

main.cpp

test.lua

どんな助けでも大歓迎です。