Detailed Description

Created: 21st May 2006 Updated: 13th March 2007.

    Robust, Lightweight, Cross-platform, Template Software.


The philosophy of STLSoft is very simple: providing robust and lightweight software to the development community. The main STLSoft project, STLSoft itself (located at the site you are viewing now) provides cross-platform, technology/API-neutral classes and functions that stand on their own and are useful as independent libraries. They also support the other sub-projects (COMSTL, UNIXSTL, WinSTL, etc.) which are targeted at specific operating systems, technologies and APIs.

The philosophy of COMSTL is essentially the same as that of the STLSoft organisation: providing robust and lightweight software to the Component Object Model (COM) development community. COMSTL provides template-based software that builds on that provided by COM and STLSoft in order to reduce programmer effort and increase robustness in the use of the COM.


The COMSTL namespace comstl is actually an alias for the namespace stlsoft::comstl_project, and as such all the COMSTL project components actually reside within the stlsoft namespace


As with all parts of the STLSoft libraries, there are no dependencies on COMSTL binary components and no need to compile COMSTL implementation files; COMSTL is 100% header-only!

As with most of the STLSoft sub-projects, COMSTL depends only on

In addition, some parts of the libraries exhibit different behaviour when translated in different contexts, such as with _WIN32_DCOM defined, or with iaccess.h include. In all cases the libraries function correctly in whatever context they are compiled.


 Assertion Macros
 These macros are used for debugging / contract-enforcement.
 Pseudo-keyword Macros
 These macros are used to handle difference in support of certain keywords between translators.
 Code Modification Macros
 These macros are used to help out where compiler differences are so great as to cause great disgusting messes in the class/function implementations.
 Cast Macros
 These macros abstract casts, representing the C++ casts in C++ compilation units, and C-casts in C compilation units.
 Inlining Macros
 These macros abstract inline.
 Pointer Manipulation Functions
 These functions assist in calculations with, and the manipulation of, pointers.
 cv-Qualifier Functions
 These functions assist in the manipulation of cv-qualifiers.

Generated on Thu Jun 10 08:58:21 2010 for STLSoft by  doxygen 1.5.6