Dear list, I exported a wrapper for std::complex<double> to python and I am willing to always use this class in python and I never want to use pythons own `complex` data type.
However, a funny thing happens when I export the addition operator (the implemenation is given in the STL ...) .def(self + self) Now I get that: type(scalar_cd(1,2) + scalar_cd(1,2)) <type 'complex'> But my own type is of the form: type(scalar_cd(1,2)) <class 'parfem.scalarPy.scalar_cd'> Why did this happen and how can I avoid this? Later own I get problems when I want to pass this back to C++. I remember that pythons own complex type is a bit special and does not cooperate nicely with boost::python and std::complex<> but how did python/boost::python end up converting the result of the addition to `complex`? I am using: Python 2.7.2 boost-1.46.1 Best regards, Holger Brandsmeier _______________________________________________ Cplusplus-sig mailing list Cplusplus-sig@python.org http://mail.python.org/mailman/listinfo/cplusplus-sig