| public concept | AdditiveGroup<T> | |
| public concept | AdditiveMonoid<T> | |
| public concept | AdditiveSemigroup<T> | |
| public concept | BackInsertionSequence<T> | A Container having an Add operation that appends an element to the end of the container. | 
| public concept | BidirectionalContainer<T> | A Container whose iterators are BidirectionalIterator s. | 
| public concept | BidirectionalIterator<T> | An iterator that can move forwards and backwards. | 
| public concept | BinaryFunction<T> | A function object whose function call operator has two parameters. | 
| public concept | BinaryOperation<T> | A BinaryFunction object where the return type and the first parameter type of the function call operator are the same type. | 
| public concept | BinaryPredicate<T> | A Boolean-valued BinaryFunction object. | 
| public concept | CommutativeSemiring<T> | |
| public concept | Container<T> | A collection of elements that provides iterators, element count and empty predicate. | 
| public concept | ConversionFromByte<T> | |
| public concept | ConversionFromSByte<T> | |
| public concept | CopyAssignable<T> | |
| public concept | CopyAssignable<T, U> | |
| public concept | CopyConstructible<T> | Requires a type to have a user defined or compiler generated copy constructor or be of a basic type. A compiler can generate a copy constructor if the class has no suppressed copy constructor and no member variables of a move-only type. | 
| public concept | Copyable<T> | |
| public concept | DefaultConstructible<T> | Requires a type to have a user defined or compiler generated default constructor or be of a basic type. | 
| public concept | Destructible<T> | |
| public concept | EqualityComparable<T> | A type whose objects can be compared with operators == and !=. | 
| public concept | EqualityComparable<T, U> | |
| public concept | EuclideanSemiring<T> | |
| public concept | ForwardContainer<T> | A Container whose iterators are ForwardIterator s. | 
| public concept | ForwardIterator<T> | An iterator that can move forwards. | 
| public concept | FrontInsertionSequence<T> | A Container having an InsertFront operation that inserts an element to the beginning of the container. | 
| public concept | HashFunction<T, Key> | |
| public concept | InputIterator<T> | |
| public concept | InsertionSequence<T> | |
| public concept | Integer<I> | |
| public concept | KeySelectionFunction<T, Key, Value> | |
| public concept | LessThanComparable<T> | A type whose objects can be compared with operators <, >, <= and >=. | 
| public concept | LessThanComparable<T, U> | |
| public concept | Lockable<T> | |
| public concept | Movable<T> | |
| public concept | MoveAssignable<T> | |
| public concept | MoveConstructible<T> | Requires a type to have a user defined or compiler generated move constructor or be of a basic type. | 
| public concept | MultiplicativeGroup<T> | |
| public concept | MultiplicativeMonoid<T> | |
| public concept | MultiplicativeSemigroup<T> | |
| public concept | OrderedAdditiveGroup<T> | |
| public concept | OrderedAdditiveMonoid<T> | |
| public concept | OrderedAdditiveSemigroup<T> | |
| public concept | OrderedMultiplicativeSemigroup<T> | |
| public concept | OutputIterator<T> | |
| public concept | RandomAccessContainer<T> | A Container whose iterators are RandomAccessIterator s. | 
| public concept | RandomAccessIterator<T> | An iterator that can move arbitrary offsets. | 
| public concept | Regular<T> | A Semiregular type that can be compared for equality and inequality. | 
| public concept | Relation<T> | A BinaryPredicate that has two parameters of the same type and provides a typedef named Domain . The domain of the relation is the type of the parameters. | 
| public concept | Relation<T, U, V> | |
| public concept | Semiregular<T> | A type that can be default constructed and either copied or moved or both. | 
| public concept | Semiring<T> | |
| public concept | SignedInteger<I> | |
| public concept | TotallyOrdered<T> | A Regular type whose objects can be compared with operators <, >, <= and >=. | 
| public concept | TotallyOrdered<T, U> | |
| public concept | TrivialIterator<T> | An iterator is generalization of a pointer. An iterator may have limitations regarding how it can move. | 
| public concept | UnaryFunction<T> | A function object whose function call operator has one parameter. | 
| public concept | UnaryOperation<T> | A UnaryFunction object where the return type and the parameter type of the function call operator are the same type. | 
| public concept | UnaryPredicate<T> | A Boolean-valued UnaryFunction object. | 
| public concept | UnsignedInteger<U> |