내 C++ 프로그램이 std :: logic_error를 종료하고 그 원인이 된 소스 라인을 추적하고 싶습니다. 어떻게해야합니까?std : logic_error의 라인 번호를 얻으십시오
TBH, 디버그 정보를 추가하기 위해 g ++ -g를 사용하여 gdb를 사용하고 있습니다. 내가 얻을 수있는 것은 다음과 같은 메시지입니다.
이 응용 프로그램은 비정상적인 방법으로 종료하도록 런타임을 요청했습니다. 자세한 내용은 응용 프로그램 지원 팀에 문의하십시오. 당신은 디버거를 사용
Catchpoint 1 (exception thrown), 0x0045ffa0 in __cxa_throw()
(gdb) bt
#0 0x0045ffa0 in __cxa_throw()
#1 0x004601e8 in std::__throw_logic_error(char const*)()
#2 0x00502238 in typeinfo for std::__timepunct<wchar_t>()
#3 0x004685f8 in std::runtime_error::what() const()
#4 0xda8 in ??()
#5 0x002efbcc in ??()
#6 0x00468734 in std::domain_error::~domain_error()()
#7 0x00000000 in ??()
(gdb)
고맙습니다. 귀하의 대답은 사실 맞지만 g ++ 및 gdb를 사용하려고한다는 것을 잊어 버렸습니다. – Mael