help-gplusplus
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: how to make a static function a friend of a class


From: Larry I Smith
Subject: Re: how to make a static function a friend of a class
Date: Mon, 16 May 2005 15:11:39 GMT
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.7) Gecko/20050414

Maett wrote:
Hi.

I would like to access private class data out of a static function as follows:

foo1.h:
  class foo1Class {
    public:
      static int getN();
    private:

        friend int ::foo1();
      // friend int foo1();
      static const int n;
  };

foo1.cpp:
  #include "foo1.h"

  const int foo1Class::n = 77;

  int foo1Class::getN()
  {
    return foo1();
  }


    int foo1()
  // static int foo1()
  {
    return foo1Class::n;
  }


Then g++ (3.2.3) tells me:
  foo1.cpp: In function `int foo1()':
  foo1.cpp:11: `int foo1()' was declared `extern' and later `static'
  foo1.h:5: previous declaration of `int foo1()'

Which of course is correct.

[snip]

Regards,
Larry

--
Anti-spam address, change each 'X' to '.' to reply directly.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]