3

「FilterCriteria」というクラスを定義しました。このクラスには、一連の関数.mファイル(getAMask、getBMaskなど)が関連付けられています。FilterCriteriaオブジェクトを作成し、それを使用して関数を呼び出すと、問題はありません。ただし、最近、別の関数を追加しました(これは、補足として、引き続き機能する別の関数とほぼ同じです)。Matlabは、「FilterCriteriaクラスに適切なメソッド、プロパティ、またはフィールドgetHMaskがありません」というエラーを返します。

この問題をオンラインで検索しましたが、何も見つかりません。ファイルgetHMask.mは間違いなく正しいフォルダーにあるので、Matlabがそれを見つけるのにこのような問題を抱えているように見える理由がわかりません。

getHMask.mのヘッダーは次のとおりです。

function mask = getHMask(object, quadrant, channel)

どんな助けでも大歓迎です。前もって感謝します。

4

2 に答える 2

6

1)私が時々犯す間違いは、正しい名前でファイルを保存しないことです。大文字などが適切な場所にあることを確認してください。

2)ここでエラーチェックの別のレイヤー...を呼び出してmethods('object here') (ここを参照)、追加しようとしているメソッド(関数)がリストされていることを確認できます。ここに表示されない場合は、メソッドの実装をチェックして、オブジェクトに使用しているクラスに正しく追加されていることを確認する必要があります。

于 2012-07-11T02:50:14.663 に答える
4

私はベンの弾丸#2によって示唆されたのと同じ問題を抱えていました、そしてそれは私を夢中にさせていました。MatLabが私のクラスのmファイルの最新バージョンをロードしていなかったことがわかりました。ワークスペースにクラスの古いインスタンスがあり、それらを無効にしないようにするため、ワークスペースをクリアするまでクラスが更新されないと言っていたため、以前に警告が表示されたことを漠然と覚えていました...

したがって、それが問題である場合は、MatLabを再起動するか、次のように入力することができます。>> clear

于 2014-02-27T00:36:18.280 に答える