STLplus is a collection of reusable C++ components for developers already familiar with the STL. It contains template containers to extend the STL, reusable subsystems, data persistence (serialisation) and portability components.

The collection is general-purpose and portable:



The containers library contains template containers (data structures) which expand on the STL as the name STLplus suggests.

The components provided are:


The persistence library includes a solution to the problem of data persistence for C++ data structures. The data persistence components allow any well-structured data structure to be dumped and restored. The same techniques can be used to transmit data structures over network connections. The persistence format is platform-independent and so can be used to transfer data structures between platforms.

The persistent types supported are:


The portability library provides platform-independent interfaces to platform-specific features. This is so that programs can be written to be inherently portable by using this library to access those features. The target platforms for portability are Windows NT/2k/XP/Vista, MacOS-X, and all flavours of Unix, including Linux and Solaris on PCs, plus Solaris, HP-UX and AIX on workstations. The components provided are:


The subsystems library contains components to build up applications in a modular way. They provide commonly-used functionality. The subsystems provided are:

String Formatting

The strings library provides formatting and printing functions which can be used to build up string representations of data structures for printing or for diagnostic text dumps. They use similar concepts to the persistence library in that they form a kit of parts which can be assembled to print any data structure.

The types supported are:

Obtaining the Software

There are three key packages in the project:

the source code for Version 3 (stable) of the STLplus C++ library
the source code for Version 2 (stable, deprecated) of the STLplus C++ library
the makefiles used to build the library if you are using the Gnu compiler

You have a choice of either downloading a zipped file containing the source code for the library or accessing the CVS repository. The download option gives you the easiest access but only provides released snapshots of the library. The CVS option gives you access to the latest version but you need to have an understanding of CVS.

The collection does not depend on any other software apart from the C and C++ standard libraries.

Note for CVS users: each of these has a corresponding module with the same name in the CVS repository.

STLplus v3 is a library collection, where each library serves a specific purpose, so you can pick which libraries in the collection to use. STLplus v3 is now the recommended version and use of v2 is deprecated.

The makefiles project is for building the STLplus libraries with gcc.


Hosted by: Logo

Author: Andy Rushton