...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
There are two major aspects or views of icl containers. The first and predominant aspect is called fundamental. The second and minor aspect is called segmental.
Fundamental |
Segmental |
|
---|---|---|
Abstraction level |
more abstract |
less abstract |
sequence of elements is irrelevant |
sequence of elements is relevant |
|
iterator independent |
iterator dependent |
|
Informs about |
membership of elements |
sequence of intervals (segmentation) |
Equality |
equality of elements |
equality of segments |
Practical |
interval_sets(maps) can be used as sets(maps) of elements(element value pairs) |
Segmentation information is available. See e.g. Time grids for months and weeks |
On the fundamental aspect
interval
implements
a set of elements partially.
interval_set
implements a set of elements.
interval_map
implements a map of element value pairs.
On the segmental aspect
interval_set
implements a set of intervals.
interval_map
implements a map of interval value pairs.