Differences between revisions 30 and 44 (spanning 14 versions)
Revision 30 as of 2004-05-20 23:31:03
Size: 1495
Editor: 198
Comment: moved intro to subpage
Revision 44 as of 2008-10-29 23:26:21
Size: 859
Editor: 201
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
See ["/Introduction"] for an introduction to Boost::Python. '''Boost.Python''' binds C++ and Python. Read ["/GettingStarted"] for an introduction.
Line 7: Line 7:
 * ["/Introduction"]  * ["/GettingStarted"]
Line 15: Line 15:
 * ["/handle"]
Line 19: Line 20:
 * /RelatedProjects
Line 32: Line 34:
 1. /EmbeddingPython
Line 35: Line 38:

----
From DavidAbrahams:

Boost.Python is designed with the idea in mind that users never touch a Py``Object*.

Boost.Python depends on quite a few of the other boost libraries (possibly a few others):
 * type_traits
 * bind
 * function
 * mpl
 * smart_ptr

IIUC, ["weave"] can be used for embedding nontrivial C++ code, if you're
willing to stick it all inside one function body. Furthermore, tools like
weave.blitz() can make an enormous difference by compiling an entire C++
expression template corresponding to an arbitrarily complicated Python
expression. Surely that's nontrivial. It's definitely ''cool''. I think weave
offers enormous power to the person who's programming mostly in Python.

Boost.Python binds C++ and Python. Read ["/GettingStarted"] for an introduction.

This page serves as a forum to gather peoples' experience and as a cookbook, as it is more dynamic by nature and open to contributors.

Various items:

Tutorial:

  1. /SimpleExample

  2. /ExportingClasses

  3. /OverridableVirtualFunctions

  4. /FunctionOverloading

  5. ["/Inheritance"]
  6. /SpecialMethods

  7. /PeekUnderTheHood

  8. /CrossExtensionModuleDependencies

  9. /WrappingEnums

  10. /PointersAndSmartPointers

  11. /InternalDataStructures

  12. /EmbeddingPython

Test cases:

boost.python (last edited 2008-11-15 14:00:11 by localhost)

Unable to edit the page? See the FrontPage for instructions.