예외: 예외 내용 검사

하지만 catch 블록의 인수는 거의 모든 데이터 형식이 될 수 있습니다, MFC 함수 클래스에서 파생 된 형식의 예외를 throw 합니다. CException.MFC 함수에서 throw 한 예외를 catch 하 고, 작성 한 catch 블록 해당 인수에 대 한 포인터입니다에 CException 개체 (object에서 파생 CException, 같은 CMemoryException).예외의 정확한 유형에 따라 예외의 특정 원인에 대 한 정보를 수집 하는 예외 개체의 데이터 멤버를 검사할 수 있습니다.

예를 들어,는 CFileException 형식에는 m_cause 파일 예외의 원인을 지정 하는 열거 형식을 포함 하는 데이터 멤버입니다.일부의 가능한 반환 값은 CFileException::fileNotFoundCFileException::readOnly.

내용을 확인 하는 방법 다음 예제는 CFileException.다른 예외 형식도 이와 비슷하게 검사할 수 있습니다.

try
{
   CFile file(_T("\\this_file_should_not_exist.dat"), CFile::modeRead);
}
catch( CFileException* theException )
{
   if( theException->m_cause == CFileException::fileNotFound )
      TRACE( "File not found\n" );
   theException->Delete();
}

자세한 내용은 예외: 예외 개체 해제예외: 예외를 삭제 하 고 Catching.

참고 항목

개념

MFC에서 처리 하는 예외