...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
In the following tables, T
and U
are the types that the
operation applies to, R
is
the result type. T
always defaults
to _self
to match the default
behavior of any. These concepts assume normal semantics. Thus, comparison operators
always return bool, and references will be added to the arguments and results
as appropriate.
Except as otherwise noted, primitive concepts defined by the library can be
specialized to provide concept maps. copy_constructible
,
and the iterator concepts cannot be specialized because they are composites.
constructible
,
destructible
,
typeid_
, and same_type
cannot be specialized
because they require special handling in the library.
Table 39.1. Special Members
concept |
notes |
---|---|
|
- |
- |
|
|
- |
|
- |
|
- |
Table 39.2. Unary Operators
operator |
concept |
notes |
---|---|---|
|
There is no separate post-increment |
|
|
There is no separate post-decrement |
|
|
|
|
|
|
- |
|
|
- |
Table 39.3. Binary Operators
operator |
concept |
notes |
---|---|---|
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
|
|
|
All are implemented in terms of |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
Table 39.4. Miscellaneous Operators
operator |
concept |
notes |
---|---|---|
|
|
|
|
|
|
Table 39.5. Iterator Concepts
concept |
notes |
---|---|
|
Use |
|
- |
|
- |
|
- |