The Apache C++ Standard Library project (code name stdcxx, pronounced "standard C++ library", not S-T-D-C-X-X) is a collection of algorithms, containers, iterators, and other fundamental components of every piece of software, implemented as C++ classes, templates, and functions essential for writing C++ programs.
The goal of the Apache C++ Standard Library is to provide a free implementation of the ISO/IEC 14882 international standard for C++ that enables source code portability and consistent behavior of programs across all major hardware implementations, operating systems, and compilers, open source and commercial alike. An additional goal is to achieve maximum implementation efficiency on each platform by taking advantage of platform-specific high-performance facilities and features which are often unique to the type of hardware, the operating system or the compiler.
As the starting point for future efforts, in summer 2005 Rogue Wave Software has contributed its commercial implementation of the C++ Standard Library to the Apache stdcxx project, a proven code base that has been shipping for over a decade and is among the most widely used cross-platform implementations of the library.
The key features of the stdcxx project at the time of submission include:
- Full conformance to the C++ standard
- Complete implementation of the localization library independent of the underlying operating system, including a large set of locale definition files, character set description files, and utility programs to process these files and generate locale databases
- User control over strict or permissive conformance checking
- Thread-safe implementation of strings, iostreams, and locales
- Reference counted
basic_stringimplementation using atomic locking with the ability to switch to a non-reference counted implementation
- Excellent runtime performance
- Optimized for fast compiles and extremely small executable file sizes
- Portable to and fully tested on a large set of operating systems, including AIX, HP-UX, Linux, Solaris, Windows, etc.
- Portable to most leading commercial as well as open source compilers
- Debugging facilities such as safe iterators, precondition and postcondition checking, and the ability to generate stack traces
- Fully documented configuration and build infrastructure
- Thorough, well-maintained documentation
- Ten years of deployment in the world's most critical enterprise systems