Thank you very much it was exatly that :)

David Abrahams a écrit :
on Thu Jan 29 2009, William Marié <william.marie-AT-gmail.com> wrote:

Hi David,

Here is the reproducible test ( just change the boost.strap and the python 
paths in
the jamroot ) !!
Thanks for your time

        void testVirtualPure( BaseCmp* pBaseCmp )
        {
                this->get_override("testVirtualPure")( ptr( pBaseCmp ) );
        }                                           // ^^^^          ^

Creating Python objects that reference C++ objects by pointer is
dangerous; if you really want to do that, wrap the C++ pointer in
ptr(...).  Otherwise Boost.Python will try to copy it.  You declared
BaseCmp to be noncopyable, so no converter was registered that would
copy a BaseCmp object into a new Python object.

David Abrahams a écrit :
on Wed Jan 28 2009, William Marié <william.marie-AT-gmail.com> wrote:

I need to call my testVirtualPure function from C++ side : BaseCmp* bc = 
BaseCmp();
Base* b = Base();
b->testVirtualPure( bc );

But this causes an error : TypeError: No to_python (by-value) converter found 
for
C++ type: class
BaseCmp
The above doesn't compile, so you can't possibly be getting that
TypeError from it.  Please post the exact complete, reproducible example
that causes youi problems, after reducing it to a minimal test case.

Thanks,
_______________________________________________
Cplusplus-sig mailing list
Cplusplus-sig@python.org
http://mail.python.org/mailman/listinfo/cplusplus-sig


_______________________________________________
Cplusplus-sig mailing list
Cplusplus-sig@python.org
http://mail.python.org/mailman/listinfo/cplusplus-sig

Reply via email to