[C++-sig] Extracting C++ objects: documentation example fails.
Joel Gerard
llywelyn.geo at yahoo.com
Fri Oct 24 23:02:27 CEST 2003
Hi there,
I'm trying to extract some wrapped objects from a python script in C++.
I've tried running the example from the docs to see how extract works, but
it wont compile:
struct X
{
X(int x) : v(x) {}
int value() { return v; }
private:
int v;
};
foo()
{
object x_class(
class_<X>("X", init<int>())
.def("value", &X::value))
;
// Instantiate an X object through the Python interface.
// Its lifetime is now managed by x_obj.
object x_obj = x_class(3);
// Get a reference to the C++ object out of the Python object
X& x = extract<X&>(x_obj);
assert(x.value() == 3);
}
I keep getting this error:
d:\dev\samples\python\pythonlibtest\main.cpp(91): error C2440:
'initializing' : cannot convert from 'boost::python::extract<T>' to 'X &'
with
[
T=X &
]
I'm using VC 7. Is there something separate that I have to do to get this
example to compile?
Thanks,
Joel
More information about the Cplusplus-sig
mailing list