저는 MinGW로 컴파일하고있는 C++ 프로그램에 전혀 문제가 없습니다. 프로그램의 특정 결정적 지점에서 일부 예외 핸들러가 비활성화되고 나중에 던져지는 예외는 더 이상 처리되지 않습니다. 이 작업을 수행하는 정확한 소스 행을 추적 할 수 있습니다.이 배열은 힙에있는 배열에 대한 부적절한 할당입니다. 포인터가 손상되지 않았거나 경계를 넘어서 쓰고 있습니다. 버그를 유발하지 않으면 서 같은 논쟁의 대부분을 제외하고는 다른 상황에서도 동일한 코드가 호출됩니다. 필자가 코드를 작성하여 값을 항상 0으로 만들면 버그가 발생하지 않습니다. 나는 무슨 일이 일어나고 있는지를 알기가 어렵다. 또한 일부 예외 처리기 만 비활성화합니다. 호출 스택 아래쪽에있는 예외 처리기는 비활성화되고 더 높은 상태의 호출자는 활성 상태로 유지됩니다. 당황 스럽네요.어떻게 MinGW 예외 처리를 디버그합니까?
그럼 어떻게 디버깅해야합니까? 나는 MinGW 버전의 GCC에서 실제로 예외가 어떻게 작동하는지에 대해서는 잘 모른다. 이 이상한 증상을 일으키는 원인은 무엇일까요?