2003-12-25から1日間の記事一覧

で、なにが言いたいのかというと

理解はできるんだけど、lua_getglobalっていう名前は直感的じゃ無いですよ旦那(笑)lua_pushLuaFuctionとかに#defineしますかねー、、、

環境テーブル

環境テーブルとはなんでしょうか? Luaでは、グローバルに記述したあらゆるコードは環境テーブルのフィールド要素として格納されます。関数は、関数名をキー、関数の中身を値として連想配列に格納します。値として格納されるのは、実際には関数への参照を持…

lua_getglobal

lua_getglobalは、以下のようなマクロです。文字列をスタックトップに積んだ後に、その文字列をキーにして、環境テーブルを検索し、対応するキーをスタックトップと差し替えます。 #define lua_getglobal(L,s) \ (lua_pushstring(L, s), lua_gettable(L, LUA…

内部関数呼び出し

Lua

C++からLua内の関数を呼び出す際、関数名をlua_getglobalでスタックに積むわけですが、なぜ「lua_getglobal」なのでしょうか? 以下に解説します

作業中

Lua

毎回lua_stateを渡さなければならないCっぽさがむかつくので、lua_stateをラップするだけの単純なC++クラスを作っていたのですが、よく考えたら、Luaから呼び出されるC関数は、引数にlua_stateを取るので、その時このクラスは役に立たない(もげー)。な…