이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

evalin

지정된 작업 공간에서 MATLAB 표현식 실행

구문

evalin(ws, expression)
[a1, a2, a3, ...] = evalin(ws, expression)

설명

evalin(ws, expression)은 작업 공간 ws에서, 변수를 사용하는 유효한 MATLAB® 표현식을 포함하는 문자형 벡터인 또는 string형 스칼라인 expression을 실행합니다. ws는 MATLAB 기본 작업 공간 또는 호출자 함수의 작업 공간을 나타내는 'base' 값이나 'caller' 값을 가질 수 있습니다.

[a1, a2, a3, ...] = evalin(ws, expression)expression을 실행하고 지정된 출력 변수로 결과를 반환합니다. 표현식에 출력 인수를 포함하여 evalin 출력 인수 목록을 사용하는 것이 좋습니다.

evalin(ws,'[a1, a2, a3, ...] = function(var)')

위의 구문을 사용하면 MATLAB 구문 분석기에서 엄격한 검사가 수행되지 않으므로 처리되지 않는 오류와 기타 예기치 않은 동작이 발생될 수 있습니다.

예제

이 예제에서는 변수 var 값을 MATLAB 기본 작업 공간에서 추출하여 지역 변수 v에서 해당 값이 캡처되도록 합니다.

v = evalin('base', 'var');

제한 사항

evalin은 표현식을 재귀적으로 실행하는 데 사용할 수 없습니다. 예를 들어, evalin('caller', 'evalin(''caller'', ''x'')') 형식의 시퀀스는 사용할 수 없습니다.

MATLAB 기본 작업 공간은 MATLAB 명령줄에서 인식되는 작업 공간입니다(디버거 환경이 아닌 경우). 호출자 작업 공간은 현재 실행 중인 함수를 호출한 함수의 작업 공간입니다. 참고로, MATLAB 명령줄에서 호출되는 함수 측면에서 보면 기본 작업 공간과 호출자 작업 공간은 동일합니다.

evalin('caller', expression)은 호출자 작업 공간에서 변수만 찾으며 호출자의 함수는 찾지 않습니다. 이런 이유로 호출자에 정의된 함수에 대한 핸들을 구성하는 데는 evalin을 사용할 수 없습니다.

dbup 또는 dbdown을 통해 로컬 작업 공간 컨텍스트를 변경한 후에 evalin('caller', expression)을 MATLAB 디버거에서 사용하는 경우 MATLAB은 현재 작업 공간 컨텍스트의 스택에서 한 수준 위에 있는 함수 컨텍스트에서 표현식을 실행합니다.

참고 항목

| | | |

R2006a 이전에 개발됨