Re: Stack corrupt or overrun?
Jack wrote:
void Poll_Thread::Poll_TCPIP(void *arg)
{
AfxMessageBox("Poll_TCPIP");
Take a look at OutputDebugString(). Its content will appear in the debugger
output of the MSVC IDE. Unless of course if you want to make the program
stop here. Oh, and since you're using MFC, you can also use the TRACE
macro, which provides printf-style formatting.
int i = m_iCount; << error (see below)
[...]
error C2440: 'initializing' :cannot convert from 'int Poll_Thread::* '
to 'int' There is no context in which this conversion is possible
Poll_TCPIP is a static function, m_iCount is a member of instances of the
class. I suggest that you read the difference between the member functions
and free functions (class-static functions are effectively free functions
with a class scope) in the C++ FAQ.
For the record: MSC resolves 'm_iCount' as 'Poll_Thread::m_iCount' and then
implicitly takes its address. This is not correct C++ but a compiler bug.
Referring to your subject: There is no stack. A stack is something a thread
gets and a thread is something that a process gets. You have a compiler
error here.
Uli
--
C++ FAQ: http://parashift.com/c++-faq-lite
Sator Laser GmbH
Gesch?ftsf?hrer: Thorsten F?cking, Amtsgericht Hamburg HR B62 932