Getting Started | ![]() ![]() |
関数ハンドル
任意のMATLAB関数にハンドルを作成することができます。そして、そのハンドルを関数の参照するものとして使用することができます。関数ハンドルは、一般に、他の関数に引数リストの中で渡され、そこで、ハンドルを使った関数を実行したり、計算します。
MATLABの中で、関数ハンドルは、関数名の前に符号
@
を使って作成します。つぎの例題は、sin
関数に対する関数ハンドルを作成し、それに、変数fhandle
を割り当てたものです。
fhandle = @sin;
MATLAB feval
関数を使って、関数ハンドルを計算します。つぎに示すように、関数plot_fhandle
は、関数ハンドルとデータを受け取り、feval
を使って、そのデータに関数ハンドルを適用し、計算を行ないます。
function x = plot_fhandle(fhandle, data) plot(data, feval(fhandle, data))
下に示すsin
関数へのハンドルと引数と共にplot_fhandle
をコールすると、計算結果は、正弦波プロットとして表示されます。
plot_fhandle(@sin, -pi:0.01:pi)
![]() |
前もってスペースを確保する | 関数を引数とする関数 | ![]() |