|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Old binders and adaptors | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Defined in header <utility> | ||
template<auto V> struct nontype_t{explicit nontype_t()=default;}; | (1) | (since C++26) |
template<auto V> constexpr std::nontype_t<V> nontype{}; | (2) | (since C++26) |
std::nontype_t can be used in the constructor's parameter list to match the intended tag.std::nontype instance of(1) is a disambiguation argument tag that can be passed to the constructors ofstd::function_ref to indicate that the contained object should be constructed with the value of the constant template parameterV.| V | - | constant template parameter of astructural type. |
(C++26) | non-owning wrapper of any callable object (class template)[edit] |