MATLABスクリプトファイルとMATLAB関数ファイルの違いは何ですか?MATLABのスクリプトと関数の違いは何ですか?
答えて
This pageが言う、機能
スクリプト対
スクリプトは、MATLAB ステートメントを含むM-ファイルです。 MATLABの ``関数 ''は、 の別のタイプのm-ファイルです。スクリプトと 関数の最大の違いは、関数には入力 と出力パラメータがあるということです。スクリプトファイル は、 がm-ファイルにハードコードされている変数でのみ動作します。 のように、より多くの機能を見ることができます フレキシブル。したがって、それらは異なる データに適用される汎用タスク に適したより多くの です。
スクリプトは、変更されないタスク に役立ちます。また、 の アクションの特定のシーケンス、例えば 特別なパラメータ値を持つ関数呼び出しを文書化する方法です。これは覚えにくいかもしれません。
スクリプトと 機能の間には微妙な違いがあります。スクリプトはキーボードマクロとして 考えることができますスクリプトの 名前を入力すると、その中に含まれる すべてのコマンドを使用すると、コマンドウィンドウにこれらの のコマンドを入力した場合と同様に を実行しています。 したがって、 スクリプトで作成されたすべての変数は、現在のセッション のワークスペースに追加されます。さらに、 スクリプト内の変数のいずれかが、現在の作業領域 の名前と同じ名前の場合、 の値は、スクリプトのアクションによって変更された です。 これはあなたの利点に使用することができます。また、 は、望ましくない副作用を引き起こす可能性があります。
対照的に、関数変数は、関数に対してローカルで です。 (例外 は、グローバル変数を使用して を宣言することが可能ですが、 ユーザーが明示的に対応する必要があります)。 関数のローカルスコープは、 のセキュリティと柔軟性を提供します。 明示的にグローバル変数として宣言された以外の の 関数との間で情報を取得する唯一の方法は、パラメータリスト内の変数 です。スクリプトと機能の主な違いの
例
一つのワークスペース内の変数へのアクセスです。たとえば、ワークスペースで、2つの変数a = 10
とb = 20
を定義したとします。これらの変数は、メインプロンプトのコマンドラインで定義されます。
スクリプトファイル - display_mult.m
disp(a*b)
。 display_mult
を入力
は、ワークスペース内すなわち10*20
又は200
をa
とb
の製品を表示するであろう。
しかし、あなたが同じ名前のファイルに定義されてdisplay_multという関数が定義されている場合:
機能ファイル - display_mult.m
function display_mult(a,b)
disp(a*b);
end
次の2つが含まれなければならないでしょうが変数を関数呼び出しの引数として使用します。したがって、a
とb
は関数のワークスペースに存在しないため、display_mult
はではなく、が今回は動作します。希望の結果を表示するdisplay_mult(a,b)
を実行してそれらを含める必要があります。
簡単な説明
スクリプト内の各ステートメントは、MATLABのコマンドウィンドウでそれらを入力することと同じです。あらかじめ手作業でファイルに保存しているだけです!
関数は、引数を取り、メインワークスペースとは別の「新しい」ワークスペースです。
注:関数呼び出しの最後のend
はオプションですが、項目を整理するために追加したいと思います。もちろん、ファイル内に複数の関数定義がある場合、それらはすべてend
で終わらなければなりません。また、スクリプトと関数定義を同じファイルに含めることはできません。
- 1. MATLABの "addOptional"と "addParameter"関数の違いは何ですか?
- 2. MATLABのplotconfusion関数とConfusionmat関数の違いは何ですか?
- 3. javascriptのvar関数と関数の違いは何ですか?
- 4. Seq関数とofList関数の違いは何ですか?
- 5. 関数と*関数の違いは何ですか?
- 6. MPI_ *関数とPMPI_ *関数の違いは何ですか?
- 7. コールバック関数と正規関数の違いは何ですか?
- 8. JS:関数式と関数式の違いは何ですか?
- 9. スレッドエントリ関数と通常関数の違いは何ですか?
- 10. コンマ区切りのMATLAB関数の戻り値とは何かの違いは何ですか?
- 11. MatLabとOctave関数の違いcp2tform
- 12. dockerfileのRUNスクリプトとbashスクリプトの違いは何ですか?
- 13. プロトタイプ関数とjavascriptの通常の関数との違いは何ですか?
- 14. PTHREAD_PRIO_INHERITとPTHREAD_PRIO_PROTECTの違いは何ですか?次の関数で
- 15. setTimeoutと関数との違いは何ですか?
- 16. matlabの*と。*の違いは何ですか?
- 17. matlabのxcorrとcross corrの違いは何ですか?
- 18. Matlabのubit16とuint16の違いは何ですか?
- 19. のfile_get_contentsと関数freadの違いは何ですか
- 20. find_all()関数とBeautifulSoupパッケージのSoupStrainerの違いは何ですか?
- 21. sparkの変換とrdd関数の違いは何ですか?
- 22. c socket()関数の型とプロトコルの違いは何ですか?
- 23. Angular 2のnavigate関数とrouterLinkの違いは何ですか?
- 24. SparkでsortとorderBy関数の違いは何ですか
- 25. RegExpのexec()関数とStringのmatch()関数の違いは何ですか?
- 26. MATLAB/Octave corrとPython numpy.correlateの違いは何ですか?
- 27. Win32 APIの `A`関数と` W`関数の違いは何ですか?
- 28. Pythonのjson.load()関数とjson.loads()関数の違いは何ですか?
- 29. PHP5.3で参照関数と通常関数の違いは何ですか?
- 30. 関数nndistとkNNdistの違いは何ですか?
例? 私にいくつかの例を教えてもらえますか? – izzat
例を追加し、ソリューションに展開しました – Jacob