Jaki będzie dokładny wynik działania powyższego programu w C++?
Jaki będzie dokładny wynik działania powyższego programu w C++?
Wyjaśnienie i uzasadnienie dydaktyczne
Poprawna odpowiedź: C
C. Działanie programu przebiega następująco:
- Program wchodzi do bloku
try. - Wyświetla
Checking value 10.... - Wywołuje
checkValue(10). Warunekvalue < 0jest fałszywy, więc funkcja wyświetlaValue is valid.i kończy działanie. - Program kontynuuje w bloku
tryi wyświetlaChecking value -5.... - Wywołuje
checkValue(-5). Warunekvalue < 0jest prawdziwy, więc funkcja rzuca (throw) wyjątekstd::runtime_error. - W momencie rzucenia wyjątku, normalne wykonywanie kodu w bloku
tryjest natychmiast przerywane. Sterowanie przechodzi do odpowiedniego blokucatch. - Blok
catchprzechwytuje wyjątek i wykonuje swój kod, wyświetlającError caught: Value cannot be negative.. - Po zakończeniu bloku
catch, program kontynuuje normalne działanie od instrukcji następującej po całym blokutry-catch, wyświetlającProgram finished..
Dlaczego inne odpowiedzi są nieprawidłowe:
A. – Kod jest w pełni poprawny składniowo.
B. – Błędne, ponieważ ignoruje fakt, że rzucenie wyjątku przerywa działanie bloku
tryi przechodzi docatch.D. – Błędne, ponieważ wyjątek jest właśnie po to, aby go obsłużyć w bloku
catchi zapobiec awaryjnemu zakończeniu programu.
Chcesz poćwiczyć całą kwalifikację INF.04?
Egzamin próbny na czas, nauka działami, losowe pytanie albo przegląd całej bazy — wszystko w przeglądarce i bez zakładania konta.
Pojęcia z tego pytania
- Instrukcje w językach programowaniaPodstawowe elementy składniowe języka programowania nakazujące procesorowi wykonanie określonej czynności: deklaracji, przypisania, rozgałęzienia lub powtórzenia.
- Funkcje, Metody i Przekazywanie ParametrówWydzielone, nazwane bloki kodu realizujące określone zadanie, przyjmujące parametry wejściowe i opcjonalnie zwracające wartość wyniku za pomocą instrukcji return.
- Obsługa wyjątków (Exception Handling)Mechanizm kontrolowanego wychwytywania i reagowania na błędy wykonania programu przy użyciu bloków try, catch, finally oraz instrukcji throw.
Podobne pytania z działu „Obsluga wyjatkow i bledow”
Ten sam obszar materiału z kwalifikacji INF.04. W całej bazie znajdziesz 9 pytań z tego działu.
- #135
Obsługę wyjątku, który wygenerowała aplikacja należy zdefiniować w sekcji
- #217
W języku Java wyjątek ArrayIndexOutOfBoundsException może pojawić się w sytuacji odwołania się do elementu tablicy, którego
- #287
W której sekcji obsługi wyjątków jest zaimplementowana reakcja na rzucony wyjątek?
- #335
Dla podawanego fragmentu kodu Java zostanie wygenerowany wyjątek, gdy zmienna index przyjmie wartość
- #581
Korzystając z obsługi wyjątków, aby zdefiniować i rzucić własny wyjątek, można zastosować polecenie: