관리되지 않는 C / C ++ 코드에서 메모리 누수를 감지하는 가장 좋은 방법은 무엇입니까? 코딩 지침은 피해야합니까? (그렇다면 간단합니다.)
우리는 과거에 약간의 어리석은 방식을 사용했습니다. 즉, 모든 메모리 할당 호출에 대해 카운터 증분을하고 해제하는 동안 감소합니다. 프로그램이 끝나면 카운터 값은 0이어야합니다.
나는 이것이 좋은 방법이 아니며 몇 가지 캐치가 있음을 알고 있습니다. (예를 들어, 플랫폼 API 호출에 의해 할당 된 메모리를 해제하는 경우 할당 계수는 해제 횟수와 정확히 일치하지 않습니다. 물론 메모리를 할당 한 API 호출을 호출 할 때 카운터를 증가 시켰습니다.)
나는 당신의 경험, 제안 및 이것을 단순화시키는 도구에 대한 언급을 기대하고 있습니다.