주요 콘텐츠

lasterr

가장 최근의 오류 메시지

lasterr은 권장되지 않습니다. MException을 대신 사용하십시오. 자세한 내용은 버전 내역 항목을 참조하십시오.

구문

msgstr = lasterr
[msgstr,errID] = lasterr
lasterr('new_msgstr')
lasterr('new_msgstr','new_errID')
[msgstr,errID] = lasterr('new_msgstr','new_errID')

설명

msgstr = lasterr은 MATLAB®에서 발생한 가장 최근의 오류 메시지를 반환합니다.

[msgstr,errID] = lasterr은 가장 최근의 오류를 msgstr로 반환하고 해당 ID를 errID로 반환합니다. 오류가 ID와 함께 정의되지 않은 경우 lasterrerrID에 대해 빈 문자형 벡터를 반환합니다. 오류 ID에 대한 자세한 내용은 MException을 참조하십시오.

lasterr('new_msgstr')은 가장 최근의 오류 메시지를 새 문자형 벡터 new_msgstr로 설정하여 이후에 lasterr을 호출할 때 새 오류 메시지가 반환되도록 합니다. 또한 lasterr('')을 사용하여 가장 최근의 오류를 빈 문자형 벡터로 설정할 수도 있습니다.

lasterr('new_msgstr','new_errID')는 가장 최근의 오류 메시지와 오류 ID를 각각 new_msgstrnew_errID로 설정합니다. 이후에 lasterr을 호출하면 새 오류 메시지와 오류 ID가 반환됩니다.

[msgstr,errID] = lasterr('new_msgstr','new_errID')는 가장 최근의 오류 메시지와 오류 ID를 반환하고, 또한 이 값들을 변경하여 이후에 lasterr을 호출할 때 각각 new_msgstrnew_errID에 지정된 메시지와 ID가 반환되도록 합니다.

예제

예제 1

여기에서는 lasterr 문자형 벡터를 검토하고 가장 최근에 발생한 오류에 따라 자체 메시지를 표시하는 함수를 보여줍니다. 이 예제에서는 행렬을 곱하여 발생할 수 있는 오류 두 가지를 다룹니다.

function matrix_multiply(A,B)
try
   A * B
catch
   errmsg = lasterr;
   if(strfind(errmsg, 'Inner matrix dimensions'))
      disp('** Wrong dimensions for matrix multiply')
   else
      if(strfind(errmsg, 'not defined for variables of class'))
         disp('** Both arguments must be double matrices')
      end
   end
end

이 함수를 행렬 곱셈에 호환되지 않는 행렬(예: A의 열 차원이 B의 행 차원과 같지 않음)과 함께 호출하면 MATLAB은 오류를 포착하고 lasterr을 사용하여 그 원인을 확인합니다.

A = [1  2  3; 6  7  2; 0  -1  5];
B = [9  5  6; 0  4  9];

matrix_multiply(A,B)
** Wrong dimensions for matrix multiply

예제 2

error를 사용하여 오류 ID와 오류 메시지를 지정합니다.

error('MyToolbox:angleTooLarge',... 
      'The angle specified must be less than 90 degrees.');

오류 처리 코드에서 lasterr을 사용하여 실패한 연산의 오류 ID와 오류 메시지를 확인합니다.

[errmsg,errID] = lasterr
errmsg =
   The angle specified must be less than 90 degrees.
errID =
   MyToolbox:angleTooLarge

확장 기능

모두 확장

스레드 기반 환경
MATLAB®의 backgroundPool을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool을 사용해 코드 실행 속도를 높일 수 있습니다.

버전 내역

R2006a 이전에 개발됨

모두 축소

참고 항목

| | | |