Wyjątki: Badanie zawartości wyjątek
Chociaż połowu bloku argument może być niemal dowolnego typu danych, funkcje MFC generują wyjątki typów pochodną klasy CException.Aby przechwytywać wyjątku, generowane przez funkcję MFC, następnie, należy napisać połowu blok, w których argument jest wskaźnik do CException obiektu (lub pochodną obiektu CException, takich jak CMemoryException).W zależności od dokładny typ wyjątku można sprawdzić członków danych obiekt wyjątku, zbierać informacje na temat określonego powodu wyjątku.
Na przykład CFileException typu ma m_cause członka danych, która zawiera typ wyliczany określa przyczyny, z wyjątkiem pliku.Przykłady możliwych zwraca wartości są CFileException::fileNotFound i CFileException::readOnly.
Poniższy przykład ilustruje sposób zbadać zawartość CFileException.Inne typy wyjątków może być zbadane podobnie.
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();
}
Aby uzyskać więcej informacji, zobacz wyjątki: zwalnianie obiektów w wyjątki i wyjątki: połowu i usuwanie wyjątki.