主要内容

스크립트에함수추가하기

R2016b부터라이브스크립트를비롯한MATLAB®스크립트에는함수를정의하는코드가포함될수있습니다。이 함수를로컬 함수라고합니다。로컬함수는스크립트내에서코드를재사용하려는경우유용합니다。로컬함수를추가하면별도의함수파일을생성하여관리하지않아도됩니다。로컬함수는또한필요에따라손쉽게함수를추가하고수정하고삭제하는등함수를시험적으로사용해보는데에도유용합니다。

로컬함수를포함하는스크립트만들기

로컬함수를포함하는스크립트또는라이브스크립트를만들려면탭으로이동하고새스크립트또는새라이브스크립트를선택하십시오。그런다음,파일에코드를추가합니다。스크립트코드다음,즉파일맨끝에모든로컬함수를추가합니다。로컬함수앞에적어도한라의스크립트코드를포함합니다。각로컬함수는자체함수정의문으로시작하고结束키워드로끝나야합니다。이함수는어떤순서로지정해도좋습니다。

예를들어,스크립트mystats.m을만들어보겠습니다。

编辑mystats

이파일에두로컬함수mymeanmymedian을포함합니다。스크립트mystats는배열을선언하고배열의길이를확marketing한다음,로컬함수mymeanmymedian을사용하여배열의평균과중앙값을계산합니다。

X = 1:10;N =长度(x)Avg = mymean(x,n);Med = mymedian(x,n);函数A = mymean(v,n)计算数组平均值的本地函数。A = sum(v)/n;结束函数M = mymedian(v,n)计算数组中位数的本地函数。W = sort(v);如果Rem (n,2) == 1 m = w((n + 1)/2);其他的M = (w(n/2) + w(n/2 + 1))/2;结束结束

라이브스크립트에로컬함수를추가하면MATLAB이첫번째로컬함수정의앞에자동으로섹션나누기를추가하고그뒤의섹션나누기는모두제거합니다。이는라이브편집기가로컬함수내에서개별섹션을지원하지않기때문입니다。

로컬함수를포함하는스크립트실행하기

로컬함수를포함하는스크립트또는라이브스크립트를실행하려면편집기탭 또는라이브편집기탭에서실행버튼을클릭하십시오。또한저장된스크립트이름을명령창에입력할수도있습니다。

스크립트또는라이브스크립트내부에서개별섹션을실행하려면섹션내부에커서를두고섹션 실행버튼을사용하십시오(00파일의경우R2017b이상이필함)。라이브스크립트또는함수(.mlx파일)에서는로컬함수정의앞에있는섹션만실행할수있습니다。

로컬함수및변수에대한제한사항

로컬함수는해당함수가정의되어있는파일내에서만식됩니다。로컬함수는다른파일에있는함수에서는인식되지않으며명령창에서호출할수없습니다。

현재파일의로컬함수는다른파일의함수보다우선합니다。즉,스크립트내의함수를호출하면MATLAB이다른위치에서함수를찾기전에이함수가로컬함수인지여부를검사합니다。이를통해다른파일에특정함수의원본을유지하면서이함수에대한대체버전을생성할수있습니다。

스크립트는기본작업공간에변수를생성하고이변수에액세스합니다。다른모든함수와마찬가지로로컬함수는자체작업공간을가지며,이작업공간은기본작업공간과별개입니다。로컬함수는다른함수의작업공간에있는변수나기본작업공간에있는변수를인수로전달받지않는한그변수에액세스할수없습니다。

로컬함수에대한도움말액세스하기

명령줄또는다른파일의함수에서로컬함수를호출할수는없지만帮助명령을사용하여해당도움말에액세스할수있습니다。스크립트의이름과로컬함수의이름을모두지정합니다。이때>문자를사용하여이름을구분합니다。

예를들면다음과같습니다。

帮助mystats > mymean
计算数组均值的本地函数。

관련 항목