- [Instructor] The Standard Template Library
is part of the C++ standards,
so it's guaranteed to be part of
every C++ development system.
Commonly called the STL,
the Standard Template Library provides containers
and supporting data types like,
vectors, lists, queues, and iterators.
Other basic functions are provided by
the C++ standard library.
The STL provides a number of standard containers,
iterators and algorithms.
Some of these include vector,
a fundamental random access container,
that can be used in many places as C array could be used,
but with a lot more functionality.
List, a double ended list optimized for
fast inserts and deletes.
Set, an ordered sequence container,
where elements are kept in a strict order
based on their value.
Map, an associate of container
where unique keys are used to access associated values.
Stack, queue and deck are LIFO FIFO
and double ended queues for pushing
and popping data from a stack.
String, is a specialized container of characters,
optimized for use as strings.
And IO streams, for reading and writing data to
and from files and IO devices.
It's worth noting that for this chapter I use C out
for most of the console output
I haven't been using C out in other chapters
because outside the context of the STL,
C out is not efficient and I don't tend to use it
myself without the STL.
C out is designed to work with STL classes,
and I use it extensively in this chapter.
C out is based on the IO stream classes,
which are also covered in this chapter.
The STL is very large,
much larger than could be covered in this course.
For our purposes, I will cover the classes that are
most commonly used for general purpose programming.
For a more detailed discussion of the STL,
please see the companion course,
C++ Templates and the STL.
Understanding the C++ template library
is an essential part of understanding C++.
The STL is part of the C++ standard,
and it provides a great deal of basic functionality.