I have one class which is implemented this way
.cpp
MyClass::~MyClass()
{
if(m_List)
{
delete m_List;
m_List = NULL;
}
}
MyClass* MyClass::Create()
{
MyClass* self = new MyClass(); // leak here as per Instrument
if(!self)
{
return NULL;
}
if(!self->Construct())
{
delete self;
self = NULL;
return NULL;
}
return self;
}
BOOL MyClass::Construct()
{
m_List = new MSList(); // MSList = link list class // leak here as per Instrument
if(!m_List)
{
delete m_List;
m_List = NULL;
return FALSE;
}
return TRUE
}
.mm
MyClass* obj = MyClass::Create();
obj->DoSomeOper();
delete obj;
Can not figure out why it is showing a memory leak?