«exception-handling» 태그된 질문

예외는 프로그램의 정상적인 흐름과의 편차가 필요한 비정상적인 조건입니다. 일반적으로 예외는 전체 실패를 초래하지 않고 대신 예외 처리기가 참석해야합니다. 예외 처리는 많은 프로그래밍 언어의 내장 구문입니다. 일반적으로 예외는 스택을 해제하여 예외 범위 밖의 정의 된 상태로 롤백 한 후 핸들러 블록 또는 루틴을 호출하여 처리됩니다.

5
시도에서 실제로 일어나는 일 {return x; } 마침내 {x = null; } 진술?
나는이 질문을 다른 질문에서 보았고 누군가 지구상에서 이것이 어떻게 작동하는지 설명 할 수 있는지 궁금해하고 있습니까? try { return x; } finally { x = null; } 내 말은, 그 finally절은 실제로 문장 다음 에 return실행됩니까? 이 코드는 얼마나 안전하지 않은 스레드입니까? 이 try-finally해킹 으로 수행 할 수있는 추가 해커를 …


5
C ++ 예외를 발생시키는 방법
예외 처리에 대한 이해가 매우 부족합니다 (예 : 내 목적에 맞게 throw, try, catch 문을 사용자 정의하는 방법). 예를 들어 다음과 같이 함수를 정의했습니다. int compare(int a, int b){...} a 또는 b가 음수 일 때 일부 메시지에서 예외를 발생시키는 함수를 원합니다. 함수 정의에서 어떻게 접근해야합니까?

11
하나의 catch 블록에서 여러 예외 유형 잡기
나는 캐치로, 다음과 같은 기능을 얻을 수있는 청소기 방법을 싶습니다 AError와 BError한 블록에 : try { /* something */ } catch( AError, BError $e ) { handler1( $e ) } catch( Exception $e ) { handler2( $e ) } 이것을 할 수있는 방법이 있습니까? 아니면 따로 잡아야합니까? AError및 Berror공유 기본 …

6
WPF 응용 프로그램에서 전역 적으로 예외를 포착합니까?
우리는 런타임에 일부가 예외를 throw 할 수있는 WPF 응용 프로그램을 가지고 있습니다. 처리되지 않은 예외를 전역 적으로 잡아서 기록하고 싶지만 아무 일도없는 것처럼 프로그램 실행을 계속하고 싶습니다 (VB와 같은 On Error Resume Next). C #에서 가능합니까? 그렇다면 예외 처리 코드를 정확히 어디에 두어야합니까? 현재 나는 try/ catcharound를 감싸고 발생할 수있는 …


12
Try 블록에 값을 반환하면 Final 문의 코드가 실행됩니까?
친구를위한 코드를 검토하고 있으며 try-finally 블록 내부에서 return 문을 사용하고 있다고 말합니다. try 블록의 나머지 부분이 작동하지 않더라도 Final 섹션의 코드가 여전히 실행됩니까? 예: public bool someMethod() { try { return true; throw new Exception("test"); // doesn't seem to get executed } finally { //code in question } }


15
파이썬의 호출자 스레드에서 스레드의 예외를 잡아라.
저는 파이썬과 멀티 스레드 프로그래밍에 익숙하지 않습니다. 기본적으로 파일을 다른 위치로 복사하는 스크립트가 있습니다. ....스크립트가 여전히 실행 중임을 표시하기 위해 이것을 다른 스레드에 배치하고 싶습니다 . 내가 겪고있는 문제는 파일을 복사 할 수 없으면 예외가 발생한다는 것입니다. 메인 스레드에서 실행 중이면 괜찮습니다. 그러나 다음 코드가 작동하지 않습니다. try: threadClass = …

7
Exception.Message와 Exception.ToString ()
로깅하는 코드가 있습니다 Exception.Message. 그러나 사용하는 것이 더 낫다는 기사를 읽었습니다 Exception.ToString(). 후자는 오류에 대한보다 중요한 정보를 유지합니다. 이것이 사실 Exception.Message입니까? 계속 진행하고 모든 코드 로깅을 바꾸는 것이 안전 합니까? log4net에 XML 기반 레이아웃을 사용하고 있습니다. 그것은 가능성이 Exception.ToString()문제가 발생할 수있는 잘못된 XML 문자를 포함 할 수 있습니다?

15
예외에 대한 C ++ 디스플레이 스택 추적
예외가 발생하면 스택 추적을 사용자에게보고하는 방법을 원합니다. 가장 좋은 방법은 무엇입니까? 엄청난 양의 추가 코드가 필요합니까? 질문에 대답하려면 : 가능하다면 휴대용으로 만들고 싶습니다. 정보가 팝업되기를 원하므로 오류가 발생하면 사용자가 스택 추적을 복사하여 이메일로 보낼 수 있습니다.

25
재시도 캐치를 어떻게 구현합니까?
Try-catch는 예외 처리에 도움이됩니다. 이는 시스템이보다 강력 해 지도록 도와 줄 것임을 의미합니다. 예기치 않은 이벤트를 복구하십시오. 우리는 실행 및 명령 (메시지 전송)시 무언가가 발생할 수 있으므로 시도에 동봉됩니다. 거의 예상치 못한 일이 발생하면 무언가를 할 수 있습니다. 나는 우리가 예외를 기록하기 위해 전화했다고 생각하지 않습니다. catch 블록은 오류에서 복구 …

15
예외 처리에 try catch를 사용하는 것이 가장 좋은 방법
선임 개발자라고 주장하는 누군가의 동료의 코드를 유지하면서 종종 다음 코드가 표시됩니다. try { //do something } catch { //Do nothing } 또는 때때로 다음 try catch블록 과 같은 로그 파일에 로깅 정보를 작성합니다. try { //do some work } catch(Exception exception) { WriteException2LogFile(exception); } 그들이 한 일이 최선의 방법인지 궁금합니다. …

25
루프와 함수를 지원하는 언어로 'goto'를 사용하는 것이 유리합니까? 그렇다면 왜 그렇습니까?
나는 goto가능하면 절대 사용해서는 안되는 인상을 오랫동안 받아왔다 . 다른 날 libavcodec (C로 작성)를 숙독하면서 여러 번 사용하는 것을 알았습니다. goto루프와 함수를 지원하는 언어 로 사용 하는 것이 유리한가요 ? 그렇다면 왜 그렇습니까?

20
{…} 시도가 마지막으로 {…} 좋은 이유는 무엇입니까? {…} 잡기 {}를 해보십시오.
나는 사람들이 인수없이 catch를 사용하는 것이 좋지 않은 형태라고 말한 것을 보았습니다. 특히 catch가 아무것도하지 않으면 : StreamReader reader=new StreamReader("myfile.txt"); try { int i = 5 / 0; } catch // No args, so it will catch any exception {} reader.Close(); 그러나 이것은 좋은 형태로 간주됩니다. StreamReader reader=new StreamReader("myfile.txt"); try …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.