The stl containers are not handled by default. You will have to manually expose it. You have a few options here: 1) the vector_indexing_suite might work for a std::list. Give it a try. 2) Manually expose the function the you care about. 3) have a couple of get/set functions as a property that copies your std::list to and from a bp::list.
-----Original Message----- From: cplusplus-sig-bounces+matthew.scouten=tradingtechnologies....@python.org [mailto:cplusplus-sig-bounces+matthew.scouten=tradingtechnologies....@py thon.org] On Behalf Of Anders Wallin Sent: Thursday, February 04, 2010 12:23 PM To: Development of Python/C++ integration Subject: [C++-sig] accessing nontrivial types Hello group, simple types (int, float, etc.) seem to transfer without problem to C++ and back to Python, but whenever I try returning something nontrivial from C++ I get something like this: >>> a = myclass.Myclass() >>> print a.i 42 >>> print a.f 3.14159 >>> print a.ilist Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: No Python class registered for C++ class std::list<int, std::allocator<int> > The code for this example is here: http://pastebin.com/m4c45a88 I tried looking in the documentation but was not able to understand what to do about this error. Any examples out there? thanks, AW _______________________________________________ Cplusplus-sig mailing list Cplusplus-sig@python.org http://mail.python.org/mailman/listinfo/cplusplus-sig _______________________________________________ Cplusplus-sig mailing list Cplusplus-sig@python.org http://mail.python.org/mailman/listinfo/cplusplus-sig