metatable

    1

    1答えて

    Lua APIには、値が1の場合はメタ機能付きのテーブルをフェッチする関数lua_getmetatableがあります。 (ルアAPIの一部である)Lua補助ライブラリには、別の関数luaL_getmetatableがあります。これは、LUA_REGISTRYINDEXから値を取得します。 しかし、このライブラリluaL_getmetafieldの別の機能は、あなたが期待するものではありません。ge

    3

    1答えて

    私はユーザーデータとしてLuaに渡すC++プログラム内のオブジェクトを持っています。このユーザーデータのメタテーブルをオーバーライドして、__newindexと__indexを介して、 Cへの呼び出しが行われ、C++オブジェクトに影響を与えるように代入を変換するか、C++要素をLua値(別のユーザーデータまたはbool、number、stringなどの基本型)に変換します。 userdataは、C

    2

    1答えて

    要素が追加されたときにサイジングを自動的に追跡するメタテーブルを使用してカスタムテーブルを作成しました。それは非常にうまく動作し、#演算子またはgetn関数の必要性を取り除きます。 ただし、問題があります。 table.insertを呼び出すと、関数は明らかに__indexまたは__newindexを呼び出すことはありません。したがって、私のテーブルは、いつ要素がこのように削除されるかを知ることが

    0

    1答えて

    私はtorchに行きたいと思っており、これはtutorialで始まりました。しかし、具体的にはsetmetatable関数でコードを実行すると、スタックオーバーフローが発生しました。私はこれが大規模な50000イメージ入力ファイルのために起こっていると信じていますが、私は間違っているかもしれません。私はluaconf.hファイルを編集して無駄に修正しようとしました。それ以外はtorchをLua 5

    0

    1答えて

    Entity FrameworkのテーブルまたはコンテキストからMetaTableを作成する方法は?私はコードファーストを使用しています。 これは

    1

    1答えて

    私は最近、ルアでメタタブルの存在を学びました。アイデアが私の頭に浮かんでくるまで、私はそれらを抱きしめていました。テーブルで「重複」を試みたり避けたりするのは可能でしょうか?私は検索し、検索し、これまで私が探しているものを見つけることができなかったので、ここにいる。 だからここに私が行うことができるようにしたいと思います何、と目的: それはすごいアドオンのプログラミングで使用することがあります。

    1

    1答えて

    Luaでメタテーブルを使用せずにテーブルを印刷することはできますか? Luaのでロベルトの本プログラミングで 、彼は「機能printは常にその出力をフォーマットするtostringを呼び出す」に言及しています。これは、メタテーブルなしで行うことはできません > a = {} > a.tostring = function() return "Lua is cool" end > print(a

    2

    1答えて

    標準バイナリ演算子==、>、<、 - 、+、*などで実装されているルアコードがあります。私は、虚数のようなルアオブジェクトを持つ機能をいくつか追加したいと考えています(特に虚数ではありませんが、それを念頭に置いた答えはまだ私が探しているものです)。私は、これらの演算子のそれぞれのインスタンスをmult(x、y)のような関数で置き換えることなく、コード全体の元の演算子を機能させ、数値が虚数の場合を考

    3

    1答えて

    : local my_table = { name = "my table" } local my_table_mt = {} function my_table_mt.__tostring(tbl) return "%s<%s>":format(tbl.name or "?", rawtostring(tbl)) end はこの可能のようなものですか? rawtostrin