ESTL
FreeC++ STL-like library for embedded developers with C++ 98 features only to maximize target platform compatibility.
FreeFree tier
About ESTL
The ESTL is a C++ STL-like library designed specifically for memory-constrained embedded C++ applications. It avoids dynamic memory allocation (no new/delete), uses only C++98 features for maximum compiler compatibility, and is highly tested and portable. Currently includes a vector class, with more components to come.
Key Features
No use of new/delete (avoid dynamic memory allocation) for memory-constrained environments
Uses only C++98 features for maximum compiler compatibility across embedded platforms
Highly tested and portable across compilers
Designed specifically for memory-constrained embedded C++ applications
Currently includes a vector class with plans for more components
Tested on G++ 4.8.3 and Wind River Diab compiler
Pros & Cons
Pros
- No dynamic memory allocation, safe for memory-constrained environments
- High portability across different compilers and platforms
- Uses standard C++98 syntax familiar to many developers
- Actively tested on multiple compilers (G++, Wind River Diab)
- Open source and free to use
Cons
- Limited to C++98 features (no C++11/14/17 features available)
- Currently only includes a vector class, offering limited functionality compared to full STL
- Not as feature-rich as standard STL implementations
- Requires a C++ compiler; not usable in pure C projects
Best For
Embedded systems development with limited memoryReal-time systems where dynamic allocation is undesirableCross-platform embedded C++ projects requiring STL-like functionalityApplications needing a lightweight, portable container library
FAQ
What compilers are supported?
ESTL has been tested on G++ 4.8.3 and Wind River Diab compiler, but it should work on other C++98-compatible compilers.
Does ESTL use dynamic memory allocation?
No, ESTL avoids new/delete completely, making it suitable for memory-constrained embedded systems.
What version of C++ does ESTL use?
ESTL uses only C++98 features to maximize compatibility with embedded compilers that lack support for newer standards.
Is ESTL open source?
Yes, ESTL is open source and available on GitHub under the esrlabs organization.