Namespaces
Variants

Cabecera de biblioteca experimental <experimental/ranges/type_traits>

De es.cppreference.net
 
 
Cabeceras de la biblioteca estándar
 
Cabeceras de bibliotecas experimentales
Ejecución P2300
<experimental/execution>
TS del sistema de archivos
<experimental/filesystem>
TS de paralelismo (v1, v2)
experimental/algorithm
experimental/execution_policy
experimental/exception_list
experimental/numeric
<experimental/simd>
experimental/task_block
TS de fundamentos de biblioteca (v1, v2, v3)
experimental/algorithm
<experimental/any>
experimental/array
experimental/chrono
experimental/deque
experimental/forward_list
<experimental/functional>
experimental/future
experimental/iterator
experimental/list
experimental/map
experimental/memory
<experimental/memory_resource>
experimental/numeric
<experimental/optional>
experimental/propagate_const
experimental/random
experimental/ratio
experimental/regex
experimental/scope
experimental/set
experimental/source_location
experimental/string
<experimental/string_view>
experimental/system_error
experimental/tuple
experimental/type_traits
experimental/unordered_map
experimental/unordered_set
experimental/utility
experimental/vector

TS de concurrencia
experimental/atomic
experimental/barrier
experimental/future
experimental/latch
TS de rangos
TS de corrutinas
experimental/coroutine
TS de redes
experimental/buffer
experimental/executor
experimental/internet
experimental/io_context
<experimental/net>
experimental/netfwd
experimental/socket
experimental/timer
TS de reflexión
<experimental/reflect>
 

Esta cabecera es parte de la biblioteca ranges.

Metaprogramación y rasgos de tipo

Definido en el espacio de nombres std::experimental::ranges
verifica si objetos de un tipo pueden intercambiarse con objetos del mismo tipo o de diferente tipo
(plantilla de clase)
determina el tipo de referencia común de un conjunto de tipos
(plantilla de clase)
determina el tipo común de un conjunto de tipos
(plantilla de clase)

Sinopsis

namespace std { namespace experimental { namespace ranges { inline namespace v1 {
template <class T, class U> struct is_swappable_with;
template <class T> struct is_swappable;
template <class T, class U> struct is_nothrow_swappable_with;
template <class T> struct is_nothrow_swappable;
template <class T, class U> constexpr bool is_swappable_with_v
  = is_swappable_with<T, U>::value;
template <class T> constexpr bool is_swappable_v
  = is_swappable<T>::value;
template <class T, class U> constexpr bool is_nothrow_swappable_with_v
  = is_nothrow_swappable_with<T, U>::value;
template <class T> constexpr bool is_nothrow_swappable_v
  = is_nothrow_swappable<T>::value;
template <class... T> struct common_type;
template <class T, class U, template <class> class TQual, template <class> class UQual>
  struct basic_common_reference { };
template <class... T> struct common_reference;
template <class... T>
  using common_type_t = typename common_type<T...>::type;
template <class... T>
  using common_reference_t = typename common_reference<T...>::type;
}}}}