Namespaces
Variants

tuple-like , pair-like

From cppreference.net
Utilities library
template < class T >
concept tuple - like = /* ver más abajo */ ;
(1) (desde C++23)
( solo para exposición* )
template < class T >

concept pair - like =

tuple - like < T > && std:: tuple_size_v < std:: remove_cvref_t < T >> == 2 ;
(2) (desde C++23)
( solo para exposición* )
1) Un tipo T modela y satisface el concepto tuple-like si std:: remove_cvref_t < T > es una especialización de
(desde C++26)
2) pair-like objetos son tuple-like objetos con exactamente 2 elementos.

Notas

tuple-like tipos implementan el protocolo de tupla , es decir, tales tipos pueden utilizarse con std::get , std::tuple_element y std::tuple_size .

Los elementos de los tipos tuple-like pueden vincularse con enlace estructurado .

Véase también

tuple-like y pair-like se utilizan en los siguientes componentes de la biblioteca estándar:

construye un nuevo tuple
(función miembro pública)
asigna el contenido de un tuple a otro
(función miembro pública)
(eliminado en C++20) (eliminado en C++20) (eliminado en C++20) (eliminado en C++20) (eliminado en C++20) (C++20)
compara lexicográficamente los valores en el tuple
(plantilla de función)
determina el tipo de referencia común de un tuple y un tipo tuple-like
(especialización de plantilla de clase)
determina el tipo común de un tuple y un tipo tuple-like
(especialización de plantilla de clase)
(C++11)
crea un tuple concatenando cualquier número de tuples
(plantilla de función)
(C++17)
llama a una función con un tuple de argumentos
(plantilla de función)
construye un objeto con un tuple de argumentos
(plantilla de función)
construye un nuevo pair
(función miembro pública de std::pair<T1,T2> )
asigna el contenido
(función miembro pública de std::pair<T1,T2> )
convierte el subrange a un tipo pair-like
(función miembro pública de std::ranges::subrange<I,S,K> )
toma una view que consiste en valores tuple-like y un número N y produce una view del N ésimo elemento de cada tuple
(plantilla de clase) (objeto adaptador de rango)