C++ Standard Template Library
The C++ STL (Standard Template Library) is a generic collection of class templates and algorithms that allow programmers to easily implement standard data structures like queues, lists, and stacks.
STL Containers
The C++ STL provides two kinds of containers:
- Sequence Containers
- C++ Vectors
- C++ Lists
- C++ Double-Ended Queues
- Associative Containers
- C++ Maps
- C++ Multimaps
- C++ Sets
- C++ Multisets
In addition, the C++ standard library provides several non-STL containers.
They can be considered containers, but don't meet all the requirements of STL containers.
- Container Adapters
- C++ Stacks
- C++ Queues
- C++ Priority Queues
- Others
- C++ Bitsets
- C++ Valarrays
The idea behind the C++ STL is that the hard part of using complex data structures has already been completed. If a programmer would like to use a stack of integers, all one has to do is use this code:
stack<int> myStack;
With minimal effort, one can now push and pop integers onto this stack. Through the magic of C++ Templates, one could specify any data type, not just integers. The STL Stack class will provide generic functionality of a stack, regardless of the data in the stack.
Algorithms
In addition, the STL also provides a bunch of useful algorithms – such as binary_search, sort, and for_each – that can be used on a variety of containers or data structures.
Iterators
C++ Iterators provide a generic way of iterating over the STL containers or other data structures.
Function Objects
The
Memory
The
Utility
There are several generic utility methods like make_pair in the
No comments:
Post a Comment