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

   
Namespaces and Interaction with other Libraries

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

LEDA now 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++

© Copyright 1995-2002, Algorithmic Solutions Software GmbH. All rights reserved.
2002-10-16