問題タブ [meta-method]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
lua - next() は __pairs メタメソッドを探しますか?
一般に、構文は次のとおりです。
次と同等です。
しかし、メタメソッドがある場合t
はどうなる__pairs
でしょうか? 標準next()
関数はこれをチェックしますか? そうでない場合は、テーブルを反復処理するときに常に使用し、直接呼び出さない方がよいのではないでしょうか? pairs
next()
lua - print が表を表示する方法を変更するにはどうすればよいですか
次のようなコードがあるとします
aTable current aValue = 1
Lua が ではなくのように出力するにはどうすればよいですtable: 0x01ab1d2
か
これまでのところ、メタメソッドを設定しようとしました__tostring
が、それは によって呼び出されないようですprint
。私が見逃しているメタメソッドはありますか、それとも答えはメタメソッドとは何の関係もありませんか?
c++ - 要素への Lua C++ ユーザーデータ マトリックス アクセス
C++ でマトリックス クラスがあり、コンストラクターは次のとおりです。
次のように set メソッドと get メソッドを実装しました。
マトリックス クラスは Lua からアクセスできます。ただし、Lua からマトリックスの要素にアクセスできる唯一の方法は、m がマトリックスの場合、m:GetValue または m:SetValue です。
m[1,2] または m(1,2) という表記で行列要素にアクセス (設定) できるかどうかを知りたいです。ここで、m は行列、[1,2] は最初の行の要素であり、 2列目。
lua - タブ内にメタテーブルをアタッチする
構成ファイルを解析してテーブルを生成するパーサーがあります。
結果のテーブルは次のようになります。
目標は、設定を読み取ることができるテーブルを用意することです。設定が存在しない場合は、親から取得しようとします。最上位では、グローバルから取得します。グローバルにない場合は nil を返します。
次のようにメタテーブルをルートにアタッチします。
ただし、キーを要求するときは機能しません。事実のように見えるのは、それが常に nil であるということです。親テーブルから読み取るにはどうすればよいですか?