From: "Bossom, John" <John.Bossom@Cognos.COM>
To: "'tim.hutt@btinternet.com'" <tim.hutt@btinternet.com>,
pthreads-win32@sources.redhat.com
Subject: RE: pthread_create(&ID, NULL, ***AC++MemberFunction***, NULL);
Date: Sun, 07 Apr 2002 15:51:00 -0000 [thread overview]
Message-ID: <430F887D415DD1118C2700805F31ECF106B58F80@sota0005.cognos.com> (raw)
simply have your class have a static member function that you use as the
mainline
instead of a friend class and do the same as your example below.
-----Original Message-----
From: Tim Hutt [mailto:tim.hutt@btinternet.com]
Sent: April 7, 2002 10:08 AM
To: pthreads-win32@sources.redhat.com
Subject: Re: pthread_create(&ID, NULL, ***AC++MemberFunction***, NULL);
07/04/02 14:38:30, "XDLai" <xdlai@wmlab.csie.ncu.edu.tw> wrote:
>The C++ member function must be a static function.
But now I cant call non-static member function of the same class from the
thread function:
c:\t\cpp\killbot\bot.cpp(124) : error C2352: 'CBot::Connect' : illegal call
of non-static member function
c:\t\cpp\killbot\bot.h(32) : see declaration of 'Connect'
I managed to get it to work another way by having it as a global friend
function of the class, and passing a pointer to the class as the paramater:
CBot class
{
friend void* Main(void* pData);
bool OtherMemberFunction();
}
void* Main(void* pData)
{
CBot* pBot = (CBot*)pData;
pBot->OtherMemberFunction();
}
Suggest any better way?
This message may contain privileged and/or confidential information. If you
have received this e-mail in error or are not the intended recipient, you
may not use, copy, disseminate or distribute it; do not open any
attachments, delete it immediately from your system and notify the sender
promptly by e-mail that you have done so. Thank you.
next reply other threads:[~2002-04-07 22:51 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-04-07 15:51 Bossom, John [this message]
-- strict thread matches above, loose matches on Subject: below --
2002-04-08 1:39 Alexander Terekhov
2002-04-07 7:07 Tim Hutt
2002-04-07 21:16 ` Ye Liu
2002-04-07 6:11 Tim Hutt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=430F887D415DD1118C2700805F31ECF106B58F80@sota0005.cognos.com \
--to=john.bossom@cognos.com \
--cc=pthreads-win32@sources.redhat.com \
--cc=tim.hutt@btinternet.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).