Hello everybody, I'm very new to Boost.Python, and I just spent hours trying to do something trivial, and couldn't get it. The C++ code is:
void add(int const a, int const b, int const& c) { c = a + b; } BOOST_PYTHON_MODULE(hello_ext) { using namespace boost::python; def("add", add); } When I tried to call this function from python I got the following error: >>> import hello_ext >>> x = int() >>> y = int() >>> z = int() >>> hello_ext.add(x,y,z) Traceback (most recent call last): File "<stdin>", line 1, in <module> Boost.Python.ArgumentError: Python argument types in hello_ext.add(int, int, int) did not match C++ signature: add(int, int, int {lvalue}) How can I get this to work? I must emphasize that I wish to have functions that get arguments by reference and change them. Returning the values using the return mechanism isn't what I want to do (I have functions that get and set many many arguments, and I hardly wish to rewrite them). Thanks, Oded _______________________________________________ Cplusplus-sig mailing list Cplusplus-sig@python.org http://mail.python.org/mailman/listinfo/cplusplus-sig