Click here to Skip to main content
15,565,146 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: Stack overflow Pin
Tim Craig6-Apr-10 9:31
Tim Craig6-Apr-10 9:31 
GeneralRe: Stack overflow Pin
CPallini6-Apr-10 10:23
mveCPallini6-Apr-10 10:23 
AnswerRe: Stack overflow Pin
Adam Roderick J5-Apr-10 20:02
Adam Roderick J5-Apr-10 20:02 
QuestionRe: Stack overflow Pin
browneyes867-Apr-10 5:27
browneyes867-Apr-10 5:27 
AnswerRe: Stack overflow Pin
jagadish bharath7-Apr-10 6:42
jagadish bharath7-Apr-10 6:42 
QuestionRe: Stack overflow Pin
browneyes867-Apr-10 6:55
browneyes867-Apr-10 6:55 
AnswerRe: Stack overflow Pin
jagadish bharath7-Apr-10 8:18
jagadish bharath7-Apr-10 8:18 
Questiondelete breaking heap [modified] - solved Pin
PaulowniaK5-Apr-10 16:21
PaulowniaK5-Apr-10 16:21 
Thanks to everyone who tried to help out.
Sorry, my bad, this was a red herring.
I found out that I was overrunning an array because the spec of other parts of the software had changed without my knowledge.
I've increased the memory allocation accordingly, and it is fine now.

==================================================================

I'm having trouble with destructors and delete.

I have some embedded structure so in order to delete one of my objects, I have to call lots of desctructors in a hierarchical way:

void CMyBigClass::StartKilling()
{
	if(NULL != m_pSubObject1)
	{
		delete m_pSubObject1;
		m_pSubObject1 = NULL;
	}
}
...

CSubObject1::~CSubObject1()
{
	if(NULL != m_pSubObject2)
	{
		delete m_pSubObject2;
		m_pSubObject2 = NULL;
	}
}
...

CSubObject2::~CSubObject2()
{
	if(NULL != m_pSubObject3)
	{
		delete m_pSubObject3;
		m_pSubObject3 = NULL;
	}
}


Normally, if I set a break point on the
delete m_pSubObject1;

line and step in (F11), I land in the first line of the desctructor fo CSubObject1.

However, I jump straight to
delete m_pSubObject3;

where I get a heap error.

I looked into as much as I could, and the debugger isn't lying. The memory it is trying to delete is different from what I told it to delete. Something is trampling over the memory, but I don't know what. I don't know how to find out either.

I've undone all the changes since the last time it was working, but still the same problem.

Please, someone, tell me how to find out what's gone wrong!!
Almost, but not quite, entirely unlike... me...
modified on Tuesday, April 6, 2010 3:16 AM

AnswerRe: delete breaking heap Pin
Adam Roderick J5-Apr-10 20:03
Adam Roderick J5-Apr-10 20:03 
AnswerRe: delete breaking heap [modified] Pin
Eugen Podsypalnikov5-Apr-10 21:22
Eugen Podsypalnikov5-Apr-10 21:22 
AnswerRe: delete breaking heap [modified] - solved Pin
Tim Craig6-Apr-10 9:34
Tim Craig6-Apr-10 9:34 
QuestionhInstance / Win32 Pin
Fareed Rizkalla5-Apr-10 7:19
Fareed Rizkalla5-Apr-10 7:19 
AnswerRe: hInstance / Win32 Pin
Chris Meech5-Apr-10 7:27
Chris Meech5-Apr-10 7:27 
AnswerRe: hInstance / Win32 Pin
Joe Woodbury5-Apr-10 7:31
professionalJoe Woodbury5-Apr-10 7:31 
QuestionRe: hInstance / Win32 Pin
Fareed Rizkalla5-Apr-10 7:44
Fareed Rizkalla5-Apr-10 7:44 
AnswerRe: hInstance / Win32 Pin
Joe Woodbury5-Apr-10 8:02
professionalJoe Woodbury5-Apr-10 8:02 
Questionsort CListCtrl specially Pin
includeh105-Apr-10 7:18
includeh105-Apr-10 7:18 
QuestionRe: sort CListCtrl specially Pin
David Crow5-Apr-10 17:36
David Crow5-Apr-10 17:36 
Questionc progrmng code help for the following algo Pin
abhijit.hzrk5-Apr-10 6:38
abhijit.hzrk5-Apr-10 6:38 
AnswerRe: c progrmng code help for the following algo Pin
Chris Losinger5-Apr-10 9:07
professionalChris Losinger5-Apr-10 9:07 
Questioncode page Pin
Member 5903105-Apr-10 3:28
Member 5903105-Apr-10 3:28 
AnswerRe: code page Pin
Emilio Garavaglia5-Apr-10 21:42
Emilio Garavaglia5-Apr-10 21:42 
QuestionNeed to get .obj file names of Executable(which one is crrently executing) at runtime programatically in VC++? [modified] Pin
glitteringsound5-Apr-10 3:09
glitteringsound5-Apr-10 3:09 
AnswerRe: Need to get .obj file names of Executable(which one is crrently executing) at runtime programatically in VC++? Pin
enhzflep5-Apr-10 3:41
enhzflep5-Apr-10 3:41 
GeneralRe: Need to get .obj file names of Executable(which one is crrently executing) at runtime programatically in VC++? Pin
glitteringsound5-Apr-10 4:03
glitteringsound5-Apr-10 4:03 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.