私はLuaプログラミング(第2版)からLuaを学び始めています。私は本の中で以下のことを理解していませんでした。Luaの関数
network = {
{name ="grauna", IP="210.26.30.34"},
{name ="araial", IP="210.26.30.23"},
}
我々はフィールド名でテーブルをソートしたい場合は、著者はここで起こっていただきました
table.sort(network, function (a,b) return (a.name > b.name) end }
に言及していますか?関数(a、b)は何を表していますか?関数はキーワードか何かですか?
の場合はそれで遊んで、テーブルの順序
order={x=1,x=22,x=10} // not sure this is legal
を作成し、その後、私は任意の出力を取得していない
print (table.sort(order,function(a,b) return (a.x > b.x) end))
をしましたました。どこが間違っていますか?
おかげ
私は論理を理解しました。私の質問はなぜ機能(a、b)を機能がキーワードにするのかということでした。 – Ank
@Ankur、はい、それはキーワードです。関数を定義します。 'function name()'として使用すると、それは名前付き関数を定義します。 'function()'と同じように使うと、それは無名関数を定義します。言語マニュアルから[セクション2.5.9](http://www.lua.org/manual/5.1/manual.html#2.5.9)を見てください。 – rid
okありがとう..何かが意味をなさない...質問の第2部分に何が間違っていたか。なぜ出力が得られなかったのですか? – Ank