Luaの関数の特徴

Luaの関数はファーストクラスオブジェクトです。
Luaの関数は関数型というひとつの型なので変数に代入したり、他の関数の引数として渡したり、
戻り値として返すことが出来ます。

Luaの関数は実際には変数に関数の実体の参照を代入したものと言えます。

関数の定義

関数を定義するには予約語の function を使います。

function 関数名(引数1, 引数2, ..)
    関数の処理
end

戻り値

戻り値を返すには return を記述します。

function 関数名(引数1, 引数2, ..)
    関数の処理
    return 戻り値
end

複数の戻り値を返す

Luaの関数では複数の戻り値を返すことが可能です。
複数の戻り値を返すには return 戻り値1, 戻り値2, 戻り値3 のように戻り値をカンマ区切りで記述します。

function 関数名(引数1, 引数2, ..)
    関数の処理
    return 戻り値1, 戻り値2, 戻り値3
end

複数の戻り値を変数で受け取るときにもカンマ区切りで変数を記述します。

ver1, ver2, ver3 = func(n)


inserted by FC2 system