8.2 関数の呼び出し
関数は、特定の計算の名前です。名前があるため、プログラムのどの時点でも名前で関数を呼び出すことができます。たとえば、関数はsqrt数値の平方根を計算します。
固定された関数セットが組み込まれており、すべての Octave プログラムで使用できます。sqrt関数はこれらの 1 つです。さらに、独自の関数を定義することもできます。これを行う方法については、 「関数とスクリプト」を参照してください。
関数を使用するには、関数呼び出し式を使用します。これは、関数名の後に括弧で囲まれた 引数のリストが続きます。引数は、関数が実行する計算の原材料を提供する式です。引数が複数ある場合は、コンマで区切ります。引数がない場合は括弧を省略できますが、関数呼び出しが意図されていることを明確に示すために、括弧を含めることをお勧めします。次に例をいくつか示します。
sqrt (x^2 + y^2) # One argument ones (n, m) # Two arguments rand () # No arguments
各関数は、特定の数の引数を必要とします。たとえば、 sqrt関数は、平方根を取る数値を 1 つの引数として呼び出す必要があります。
sqrt (argument)
一部の組み込み関数は、特定の使用法に応じて可変数の引数を取り、指定された引数の数に応じて動作が異なります。
他のすべての式と同様に、関数呼び出しには値があり、その値は関数に渡された引数に基づいて計算されます。この例では、 の値は引数の平方根です。関数には、特定の変数の値を割り当てたり、入力または出力操作を実行したりするなどの副作用もあります。 sqrt (argument)
他の言語とは異なり、Octaveの関数は複数の値を返すことがあります。例えば、次の文は
[u, s, v] = svd (a)
行列の特異値分解を計算しa、3つの結果行列をu、、sおよびに割り当てますv。
多重代入式の左側は、それ自体が式のリスト、つまりインデックス式によって修飾される可能性のある変数名のリストです。インデックス式および代入式も参照してください。
Call by Value
Recursion
Access via Handle