2

テーブルに対していくつかの操作を実行する状況があり、それらを T および V と呼びます。メタテーブルを正しく設定し、すべてが期待どおりに機能します。問題は、通常、計算の結果は必要ないということです。だから書く代わりに

for i=1,5 do
    _=T+V
end

ただ持つ方法はありますか

for i=1,5 do
    T+V
end

?

私は Lua コマンドラインを使用していないので、単に =T+V と書くことはできません。

4

2 に答える 2

6

何もしない関数を作成し、それに渡します。

function NOP() end

for i=1,5 do
    NOP(T+V)
end

これはまた、あなたの意図を文書化するのにも役立ち、副作用はあなたが求めているものです.

于 2012-12-14T00:52:17.543 に答える
3

拡張 BNF での Lua の構文を見ると、等号などを使用せずに式 (exp) を作成する方法がわかりません。

式 (exp) を使用できるケースは 4 つだけです。

  • 値の割り当てp = exp

  • 条件として例えばwhile exp then

  • 関数呼び出しでf(exp)

  • インデックス作成用、つまりt[exp]

于 2012-12-13T16:00:08.130 に答える