Skip to content
Ned Bingham edited this page Oct 28, 2017 · 35 revisions

NOTE: This page is out of date. Most of the containers are the same, however the streaming functionality has changed and there is now an abstract base class for all containers.

Simple Containers

pair is a basic structure for quickly grouping values together.

implier is a key-value pair that enables mapped value containers.

fill contains N duplicates of one value.

range contains a set of consecutive values.

sparse_range contains a set of consecutive values separated by a certain step size.

Standard Containers

These containers implement standard ways to store and interact with different kinds of data.

array implements a dynamically allocated array.

list implements a doubly linked list.

index_list implements a doubly linked list with indexed elements.

map uses a linked list of impliers with binary search.

hash_set uses a list of values indexed by an array of iterators.

hash_map uses a hash_set of impliers.

graph implements a basic graph with unlabeled directed arcs.

Interface Containers

These containers serve to apply a different interface to an existing container.

slice provides a way to operate on sections of another container.

Specialized Containers

string specialized container for dealing with text.

bits specialized container for dealing with arbitrary binary strings.

Input/Output

file wrapper of c FILE.

ascii_stream buffered stream for text output.

binary_stream buffered stream for binary output.

Algorithm

algorithm basic algorithms and arithmetic on containers.

sort sorting algorithms for containers.

search searching algorithms for containers.

Simple Containers

Standard Containers

Interface Containers

Specialized Containers

Input/Output

Algorithm

Clone this wiki locally