J'essaye d'encapsuler une classe C++ qui gère les valeurs binaires en utilisant Boost.Python. Pour cette classe, le "< <" opérateur a été défini commeBoost.Python: Impossible d'encapsuler C++ "operator <<" pour exposer la fonctionnalité d'impression en Python
std::ostream &operator<<(std::ostream &output, const bin &inbin);
Je l'ai essayé emballage avec
class_<bin>("bin", init<>())
.def(str(self));
Cependant, la compilation jette cette erreur:
boost/python/def_visitor.hpp:31:9: error: no matching function for call to
‘boost::python::api::object::visit(boost::python::class_<itpp::bin>&) const’
Je suis pas sûr de savoir comment résoudre cette erreur, quelqu'un a une idée?
Pourquoi ce SWIG marqué et ctypes quand il s'agit de boost.python? – Flexo
@flexo Le problème pourrait être quelque chose de fondamental lié à l'opérateur d'emballage << pour python – vid
Si vous écrivez une interface boost.python, cela n'a rien à voir avec un swig one ou un ctypes. – Flexo