¿Cuál es la mejor manera de hacer que una función que tenga un puntero como argumento funcione con boost python? Veo que hay muchas posibilidades para los valores de retorno en los documentos, pero no sé cómo hacerlo con argumentos.Argumento del puntero para impulsar python
void Tesuto::testp(std::string* s)
{
if (!s)
cout << " NULL s" << endl;
else
cout << s << endl;
}
>>> t.testp(None)
NULL s
>>>
>>> s='test'
>>> t.testp(s)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
Boost.Python.ArgumentError: Python argument types in
Tesuto.testp(Tesuto, str)
did not match C++ signature:
testp(Tesuto {lvalue}, std::string*)
>>>
a pasar una referencia en Boost.Python está un problema, solo podemos pasar la referencia constante, a menos que implementemos nuestro propio contenedor de referencia, ¿tiene alguna idea de cómo implementarlo? –