最近、古い Lua 5.1 プロジェクトをライブラリの最新バージョンに更新しましたが、問題が発生しましたLUA_GLOBALSINDEX
- 未定義になりました。lua_getfield
次のように、関数でのみ使用しました。
void luastartgame(void)
{
if(startgamefunction.empty())return ;
lua_getfield(globalL, LUA_GLOBALSINDEX, startgamefunction.c_str()); // go to function in Lua script
int numArgs = 0;
int res = lua_pcall(globalL,numArgs,0, 0);
if(!luaresf(res)) // did the function call result in an error?
{
return;
}
}
これをいくつかの定数整数に置き換えてみました。0 以外の場合、プログラムがクラッシュします。0 の場合、「nil 値にアクセスしようとしています」と不平を言って、奇妙に実行されます。
私のソースコードはこちらから入手できます。をどのように処理すればよいLUA_GLOBALSINDEX
ですか? 何に変更すればよいですか?