6
Luaの5.2への移植:http://lua-users.org/wiki/SimplerCppBindingのコード例では、LUA_GLOBALSINDEXトラブル
はコードがある:Luaの5.2では
lua_pushstring(L, T::className);
lua_pushvalue(L, methods);
lua_settable(L, LUA_GLOBALSINDEX); //<--- LUA_GLOBALSINDEX removed in Lua 5.2
lua_pushliteral(L, "__metatable");
lua_pushvalue(L, methods);
lua_settable(L, metatable);
は、LUA_GLOBALSINDEXは存在しません。代わりに、lua_setglobal()とlua_getglobal()があります。私はそれを考えに修正
アム:
lua_pushstring(L, T::className);
lua_pushvalue(L, methods);
lua_settable(L, LUA_GLOBALSINDEX);
私は確かにLuaのにあまりにも新たなんだ、私は避難所:
lua_pushvalue(L, methods);
lua_setglobal(L, T::className);
は...のための適切な交換です8ヶ月間それを使用していない。ドキュメントを見ると、私はと思っています。これは間違いありませんが、検証したいと思います。
はい、lua_setglobal()を正しく使用していますか? lua_pushvalue(L、メソッド); lua_setglobal(L、T :: className); –
@ComServant、 'T :: className'が' char * 'ならば、yesです。それは働いていないのですか? – lhf