Octaveでの関数ハンドルは以下の例として定義されています。機能f(x)
を呼び出すオクターブでの関数ハンドルフォーマット
f = @sin;
は、sin(x)
を呼び出すのと同じ効果があります。ここまでは順調ですね。私の問題は、以下の私のプログラミング課題からの機能から始まります。
function sim = gaussianKernel(x1, x2, sigma)
上記の行は、関数gaussianKernel
のヘッダーを表します。これは3つの変数を入力として受け取ります。しかし、以下の呼び出しは、gaussianKernel
を参照している間に、2つの変数と3つしか渡していないので、私の心が混乱します。
model = svmTrain(X, y, C, @(x1, x2) gaussianKernel(x1, x2, sigma));
単純にmodel = svmTrain(X, y, C, @gaussianKernel(x1, x2, sigma));
ではありませんか?違いはなんですか?