No, that only prevents the file being included twice in the same .cpp file.
The solution to this problem is to move the function bodies into their own
.cpp file:
foo.h:
class Foo {
Foo();
~Foo();
};
fooclass.cpp:
Foo::Foo() { ... }
Foo::~Foo() { ... }
--Wez.
----- Original Message -----
From: "Igal Ore" <iore@cipherquest.com>
To: <internals@lists.php.net>; "Wez Furlong" <wez@thebrainroom.com>
Cc: <jay@php.net>; <internals@lists.php.net>
Sent: Wednesday, September 17, 2003 4:01 PM
Subject: Re: [PHP-DEV] Re: C++ extension question
> you are right , and for those cases there a preprocessor protection
> #ifndef DO_NOT_MAKE_BOBO
> #define DO_NOT_MAKE_BOBO
>
> class Foo{
> Foo(){...}
> ~Foo(){...}
> };
> #endif
>
>
> isn't it?
>
> Wez Furlong wrote:
> > This sounds like the "rookie" mistake of declaring your functions inline
in
> > the class definition in the header files, and then including those
headers