そのため、Lua C API を使用すると、Lua の値をレジストリに保存して、後で取得できます。それにはさまざまな方法があります。変数を作成し、そのポインタをレジストリのキーとして使用できます。これは常に一意であるためです。ポインターを軽いユーザーデータとしてプッシュします。
を使用して参照を作成することもできますLuaL_ref(L, LUA_REGISTRYINDEX)
。一方が他方よりも優れている点は何ですか? いつ参照を使用し、いつポインタを使用するのですか?
また、参照については、参照と呼ぶように、Lua ガベージ コレクタが Lua の値を収集すると、レジストリ内の値は になりますnil
か? Lua が Lua の値を更新すると、レジストリの値も変更されますか?