Pytania otagowane jako exception-handling

Wyjątkiem są nietypowe warunki, które wymagają odchylenia od normalnego przepływu programu. Zwykle wyjątek nie powinien skutkować całkowitą awarią, lecz powinien być obsługiwany przez procedurę obsługi wyjątku. Obsługa wyjątków jest wbudowaną konstrukcją w wielu językach programowania. Zwykle wyjątki są obsługiwane przez odwijanie stosu, a tym samym przywracanie do określonego stanu poza zakresem wyjątku, a następnie wywoływanie bloku lub procedury obsługi.



5
Jak zgłosić wyjątek C ++
Bardzo słabo rozumiem obsługę wyjątków (tj. Jak dostosować instrukcje rzucania, próbowania, łapania do własnych celów). Na przykład zdefiniowałem funkcję w następujący sposób: int compare(int a, int b){...} Chciałbym, aby funkcja generowała wyjątek z pewną wiadomością, gdy a lub b jest ujemne. Jak mam podejść do tego w definicji funkcji?

11
Łapanie wielu typów wyjątków w jednym bloku catch
Chciałbym czystszego sposobu na uzyskanie następujących funkcji, aby złapać AErrori BErrorw jednym bloku: try { /* something */ } catch( AError, BError $e ) { handler1( $e ) } catch( Exception $e ) { handler2( $e ) } Czy jest na to sposób? Czy też muszę je łapać osobno? AErrori …

6
Globalnie łapać wyjątki w aplikacji WPF?
Mamy aplikację WPF, której części mogą generować wyjątki w czasie wykonywania. Chciałbym globalnie złapać każdy nieobsługiwany wyjątek i zapisać je, ale poza tym kontynuować wykonywanie programu tak, jakby nic się nie wydarzyło (trochę jak VB On Error Resume Next). Czy jest to możliwe w C #? A jeśli tak, to …




15
Złap wyjątek wątku w wątku wywołującym w języku Python
Jestem bardzo nowy w Pythonie i ogólnie programowaniu wielowątkowym. Zasadniczo mam skrypt, który skopiuje pliki do innej lokalizacji. Chciałbym, aby został on umieszczony w innym wątku, dzięki czemu mogę wysyłać dane ....wskazujące, że skrypt nadal działa. Problem, który mam, polega na tym, że jeśli nie można skopiować plików, wygeneruje wyjątek. …

7
Exception.Message vs Exception.ToString ()
Mam kod, który się loguje Exception.Message. Przeczytałem jednak artykuł, który mówi, że lepiej go używać Exception.ToString(). W tym drugim przypadku zachowujesz ważniejsze informacje o błędzie. Czy to prawda i czy można bezpiecznie zastąpić rejestrowanie kodu Exception.Message? Używam również układu opartego na XML dla log4net . Czy to możliwe, że Exception.ToString()mogą …

15
Śledzenie stosu wyświetlania C ++ w wyjątku
Chcę mieć sposób na zgłoszenie śladu stosu użytkownikowi, jeśli zostanie zgłoszony wyjątek. Jak najlepiej to zrobić? Czy to wymaga dużej ilości dodatkowego kodu? Aby odpowiedzieć na pytania: Chciałbym, żeby to było przenośne, jeśli to możliwe. Chcę, aby pojawiły się informacje, aby użytkownik mógł skopiować ślad stosu i wysłać mi wiadomość …

25
Jak wdrożyć próbę ponownego uruchomienia?
Try-catch ma na celu pomóc w obsłudze wyjątków. To w jakiś sposób pomoże naszemu systemowi stać się bardziej niezawodnym: spróbuj odzyskać dane z nieoczekiwanego zdarzenia. Podejrzewamy, że coś może się wydarzyć podczas wykonywania instrukcji i (wysyłania wiadomości), więc zostaje to uwzględnione podczas próby. Jeśli wydarzy się coś prawie nieoczekiwanego, możemy …

15
W jaki sposób używanie try catch do obsługi wyjątków jest najlepszą praktyką
zachowując kod mojego kolegi nawet przed kimś, kto twierdzi, że jest starszym programistą, często widzę następujący kod: try { //do something } catch { //Do nothing } lub czasami zapisują informacje rejestrujące do plików dziennika, takich jak następujący try catchblok try { //do some work } catch(Exception exception) { WriteException2LogFile(exception); …



Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.