C++에서 memory leak 질문드립니다.

hyde1004의 이미지

안녕하세요.

저는 임베디드 개발자입니다.(LINUX)
memory leak 관련하여 질문드립니다.

이전에 C로 개발할때는 malloc( ), free( )를 실행할때 마다
해당 포인터를 모니터를 해주는 공개 라이브러리를 사용해서 유용하게 썼습니다.
그런데, C++ 로 넘어오니, new, delete 동작 특성 때문에
memory leak 관리하는 라이브러리가 많지 않네요.
Valgrind 라는 툴을 추천하던데, 플랫폼이 X86이 아니다보니 사용할 수가 없네요.

Q1) C++에서 memory leak을 찾는 도움될만한 툴이나 방법이 있을까요?

Q2) new, delete를 malloc( ), free( )로 대체해서 memory leak 모니터 라이브러리를 쓰는 방법은 어떨까요? 예를 들면, 아래와 같은 방법을 쓰는 건 어떨까요?

Simple::Simple(void)
{
   init(void);
}
Simple::init(void)
{
   // memory 할당 등, 생성자에서 해야 할 일들 구현
}
 
Simple::~Simple()
{
   destroy(void);
}
 
Simple::destroy(void)
{
    free( ) ;;  
}
neogeo의 이미지

new delete 도 전부 overload 됩니다.

Neogeo - Future is Now.

Neogeo - Future is Now.