4 Apr 2008 01:26
Re: [Cython] [Pyrex] C++ forward declaration
On Apr 3, 2008, at 4:20 PM, Ravi Lanka wrote:
> Pyrex gurus,
>
> I am trying to wrap two C++ classes in a Namespace called
> "MyNameSpace". I was breezing through using some of the ideas
> shared by
> Lenard and others. I got stuck with a case of forward declaration as
> below. The two classes I have, A and B, have methods that require the
> objects corresponding to B and A. If I try to declare, say class B,
> without all the methods before class A and then try to create the
> complete code for class B, it complains that class B is re-declared.
> How do I get around this problem ?
>
> cdef extern from "A.h":
> ctypedef struct A "MyNameSpace::A":
> void (*foo)( B data )
>
> cdef extern from "B.h":
> ctypedef struct B "MyNameSpace::B":
> void (*bar)( A data )
>
> thanks
> Ravi
I believe you have to do a forward declaration. The following works
for me:
cdef extern from "B.h":
ctypedef struct B
(Continue reading)
RSS Feed