Container A container in C++ is an object which stores other objects. STL defines several types
of containers, such as vector or deque, map and set.
Iterators An iterator is a generalized pointer used with containers. An iterator points to
one and only one item in a controlled sequence. The object an iterator points to
is referenced via the de-reference operator. A C++ pointer is one type of iterator.
InIt/InputIterator, OutIt/OutputIterator, FwdIt/ForwardIterator, BidIt/BidirectionalIterator, RanIt/RandomAccessIterator
The Standard C++ Library classifies iterators used by STL containers and algorithms into four different categories:
Input Iterator
Output Iterator
Forward Iterator
Bidirectional Iterator
RandomAccess Iterator
The Visual C++ online documentation denotes these iterators using class names InIt(for Input Iterator),
OutIt(for Output Iterator), FwdIt(for Forward Iterator), BidIt(for Bidirectional Iterator), and
RanIt(for RandomAccess Iterator).
This set of documentation denotes these iterators using class names InputIterator(for Input Iterator),
OutputItertaor(for Output Iterator), ForwardIterator(for Forward Iterator),
BidirectionalIterator(for Bidirectional Iterator), and RandomAccessIterator(for RandomAccess Iterator)
Sequence, range, [first,last) - interval notation A sequence refers to elements stored in a container. A sequence is denoted by a range.
A range is expressed using the interval notation: [first, last). The "bracket-parenthesis" notation
indicates that the sequence includes first, but does not include last.
Predicate Functions, Comparison Functions Predicate functions and comparison functions are synonyms. Several Standard C++ Library algorithms take
predicate/comparison functions as arguments. Predicate functions can be either C++ functions or function objects.
Function objects can be user-defined or function objects provided by the Standard C++ Library. Predicate/comparison
functions in this documentation set are denoted by use of class names such as Compare, Predicate,
BinaryPredicate, UnaryOperator, BinaryOperator etc. The Visual C++ online documentation uses class names
such as Pred, Comp, Unop, and Binop to denote predicate/comparison functions.