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
[email protected]
http://mail.python.org/mailman/listinfo/cplusplus-sig