Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > C - C++ Learning > Still having pr...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 1 of 14 Topic 4050 of 4218
Post > Topic >>

Still having problems with my member function pointers

by Andrew Falanga <af300wsm@[EMAIL PROTECTED] > Mar 6, 2008 at 07:45 AM

Hi,

 About two weeks ago (or so) I posted here that I was having problems
with getting a member function pointer to point to a member function
without giving me grief.  I've gone to trying this on a trial program
that I will post below in its entirety.  I just can't get it right and
although I've tried the suggestions given to me from the other
posting, I'm still doing something wrong.  So, here's my test program:

#include <iostream>

class base {
   int somedata;

   public:
   base();

   int GetData() {
      return somedata;
   }

   int (base::*ptrMemFunc)();

};

base::base() : somedata(5), ptrMemFunc(&base::GetData)
{}

// this one's only in here to make sure I remembered how to use
function pointers
int AnInt() {
   return 5;
}

int main( ) {
   base b;
   int (*pAnInt)() = AnInt;

   std::cout << pAnInt() << std::endl;

   b.ptrMemFunc();

   return 0;
}

Now, my compiler (GNU 3.3.3) is giving me these errors:

(Note: as the code is above)
foo.cxx: In function `int main()':
foo.cxx:34: error: call to non-function `base::ptrMemFunc'

(Note: if I change line 34 to having a * in front of ptrMemFunc I get
this error:)
foo.cxx: In function `int main()':
foo.cxx:34: error: `ptrMemFunc' undeclared (first use this function)
foo.cxx:34: error: (Each undeclared identifier is re****ted only once
for each
   function it appears in.)


In the second case, I do not understand at all why it says that
ptrMemFunc is undeclared.  It's right there in the class definition.

So, how do I get a class member, that is a function pointer, point to
another member function of that class, and the use that pointer to
reference these functions in other parts of the code that I'm trying
to?

Thanks, and forgive my confusion.
Andy
 




 14 Posts in Topic:
Still having problems with my member function pointers
Andrew Falanga <af300w  2008-03-06 07:45:14 
Re: Still having problems with my member function pointers
"Alf P. Steinbach&qu  2008-03-06 17:27:18 
Re: Still having problems with my member function pointers
Triple-DES <DenPlettfr  2008-03-06 08:39:26 
Re: Still having problems with my member function pointers
Andrew Falanga <af300w  2008-03-06 08:41:02 
Re: Still having problems with my member function pointers
"Alf P. Steinbach&qu  2008-03-06 17:49:40 
Re: Still having problems with my member function pointers
Andrew Falanga <af300w  2008-03-06 08:56:09 
Re: Still having problems with my member function pointers
"Alf P. Steinbach&qu  2008-03-06 19:19:36 
Re: Still having problems with my member function pointers
Triple-DES <DenPlettfr  2008-03-06 09:07:53 
Re: Still having problems with my member function pointers
Bart van Ingen Schenau &l  2008-03-06 18:49:13 
Re: Still having problems with my member function pointers
Andrew Falanga <af300w  2008-03-06 10:04:26 
Re: Still having problems with my member function pointers
Triple-DES <DenPlettfr  2008-03-06 10:57:45 
Re: Still having problems with my member function pointers
Andrew Falanga <af300w  2008-03-06 11:43:17 
Re: Still having problems with my member function pointers
Andrew Falanga <af300w  2008-03-06 11:47:30 
Re: Still having problems with my member function pointers
Triple-DES <DenPlettfr  2008-03-06 22:03:46 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Sat Jul 26 0:08:44 CDT 2008.