next up previous contents index
Next: Platforms Up: Technical Information Previous: DLL's for Borland C++   Contents   Index


Namespaces and Interaction with other Libraries

If users want to use other software packages like STL together with LEDA in one project avoiding naming conflicts is an issue.

LEDA defines all names (types, functions, constants, ...) in the namespace leda. This makes the former macro-based prefixing scheme obsolete. Note, however, that the prefixed names ``leda_...'' still can be used for backward compatibility. Application programs have to use namespace ``leda'' globally (by saying "using namespace leda;") or must prefix every LEDA symbol with "leda::".

The second issue of interaction concerns the data type bool which is part of the new C++ standard. However not all compilers currently support a bool type. LEDA offers bool either compiler provided or defined within LEDA if the compiler lacks the support. Some STL packages follow a similar scheme. To solve the existance conflict of two different bool type definitions we suggest to use LEDA's bool as STL is a pure template library only provided by header files and its defined bool type can be easily replaced.


next up previous contents index
Next: Platforms Up: Technical Information Previous: DLL's for Borland C++   Contents   Index
root 2007-03-08