It is possible to write extension modules in C++. Some restrictions
apply. If the main program (the Python interpreter) is compiled and
linked by the C compiler, global or static objects with constructors
cannot be used. This is not a problem if the main program is linked
by the C++ compiler. All functions that will be called directly or
indirectly (i.e. via function pointers) by the Python interpreter will
have to be declared using extern "C"
; this applies to all
``methods'' as well as to the module's initialization function.
It is unnecessary to enclose the Python header files in
extern "C" {...}
--- they use this form already if the symbol
`__cplusplus' is defined (all recent C++ compilers define this
symbol).