http://lua-users.org/wiki/CppLuaDataPassingには、C++からLuaテーブルを作成するための次のコードがあります。
// set first element "1" to value 45
lua_pushnumber( state, 1 );
lua_pushnumber( state, 45 );
lua_rawset( state, -3 );
// set the number of elements (index to the last array element)
lua_pushliteral( state, "n" );
lua_pushnumber( state, 1 );
lua_rawset( state, -3 );
最後のブロックは、その例に基づいて、Luaテーブルに最後の配列要素へのインデックスを格納する「n」という特別な意味のキーがあることを意味しているようです。
しかし、 LuaManualにはそれへの参照が見つかりませんでした。
私の推測は正しいですか、それとも間違っていますか?
それが正しければ、誰かがこの「n」キーを説明する良い参考資料を教えてもらえますか?
間違っている場合、例の2番目のコードブロックの意味は何ですか?
そして、それが正しい場合は、Luaの読み取り用にC ++で有効なテーブルを作成するために必要なこの最後のインデックス割り当てを行っています(Luaコードがテーブルを変更しないと仮定します)