INF.04 · pytanie 308
Co następuje, gdy błąd nie zostanie uchwycony przez blok catch?
- ABłąd zostanie zignorowany przez kompilator
- BProgram zakończy działanie z błędemPoprawna
- CInstrukcja throw zostanie automatycznie wykreślona
- DProgram kontynuuje działanie, pomijając błąd
Wyjaśnienie
Jeśli wyjątek nie zostanie przechwycony przez blok 'catch', program zakończy działanie z błędem i wygeneruje komunikat o nieobsłużonym wyjątku. Jest to domyślne zachowanie w C++ i innych językach obsługujących wyjątki, co ma na celu zapobieganie dalszemu wykonywaniu kodu, który mógłby prowadzić do nieprzewidywalnych rezultatów. Obsługa wyjątków jest kluczowym elementem zapewniania stabilności i bezpieczeństwa aplikacji – brak jej implementacji może prowadzić do awarii programu. Dlatego zaleca się, aby zawsze stosować odpowiednie bloki 'try-catch' wokół kodu, który może generować wyjątki.