방금 _CrtDumpMemoryLeaks
사용법을 테스트하기 위해 바이너리 트리를 작성했습니다. 코드는 다음과 같습니다. 중단점으로 추적한 결과 모든 노드가 삭제되었지만 출력 창에 여전히 프롬프트가 표시됩니다.
으아악
두 가지 질문이 있습니다.
에서 제공하는 프롬프트 정보에서 자신의 메모리 누수가 어디에 있는지 알아내는 방법, 어떤 기본 지식이 필요합니까? 더 구체적으로 설명하면 0x02EE2880
등의 주소를 빠르게 찾을 수 있는 방법은 무엇입니까? by _CrtDumpMemoryLeaks
给出的提示信息得出自己内存泄漏之处, 需要那些基础知识? 再具体些, _CrtDumpMemoryLeaks
给出的地址0x02EE2880
等如何从代码中迅速找到, 毕竟写多点的话肯定不能手动找啊. 以及 09 00 00 00 00....
코드에서 더 많은 것이 있으면 수동으로 검색할 수 없습니다. 그리고 09 00 00 00 00....
는 무엇을 의미합니까?
_CrtDumpMemoryLeaks(); t가 아직 파괴되지 않은 경우
으아아아이것으로 바꿔보세요
프롬프트 메시지의 데이터를 보면 말씀하신 문자열 09 00 00 00이구요, 이것이 유출된 메모리 내용입니다
으아아아바이트 0-3은 int이고 4-7 및 8-11은 각각 왼쪽 및 오른쪽 포인터이며 합계는 new Node(9)입니다.