Tupla C++

Tupla C



Trabajar con cualquier lenguaje de programación requiere el uso de tuplas, listas, arreglos, etc. Los arreglos, listas y tuplas ofrecen los mismos servicios con ligeras diferencias. Una tupla es un objeto que contiene una lista ordenada de elementos. Es como una matriz y una lista, sin embargo, ambos son mutables, pero la tupla es inmutable. Un objeto inmutable no puede sufrir ningún cambio durante la ejecución. La lista y la matriz se pueden modificar, dividir o indexar fácilmente, ya que son mutables. Pero una tupla no se puede modificar, dividir o cambiar, ya que es un objeto inmutable. Además, la lista y la matriz solo pueden almacenar un tipo de datos, pero una tupla puede tener datos de varios tipos. En esta guía, discutiremos la función principal de una tupla y cómo se puede usar en un programa C++.

¿Qué es una tupla en un lenguaje de programación C++?

Una tupla en un lenguaje de programación c ++ es un objeto que contiene una lista ordenada de elementos. Es un tipo de datos inmutable, lo que significa que los valores de la tupla no se pueden cambiar en ningún punto de la ejecución. El valor de una tupla se da entre corchetes () separados por una coma y se puede acceder por la referencia del índice. Hay muchas funciones que se pueden realizar en una tupla, es decir, get(), swap(), tuple_size(), etc. En las secciones siguientes, explicaremos el funcionamiento de las 4 funciones con la ayuda de ejemplos.

Ejemplo 1:
En este ejemplo, crearemos una tupla usando la función make_tuple(). El make_tuple() se usa en un programa C++ para asignar valor a una tupla. Los valores que deben asignarse a la tupla deben estar en el mismo orden en que se declararon en la tupla. Veamos el código adjunto a continuación para entender cómo funciona la función make_tuple() en un programa C++.







Las bibliotecas 'include ' y 'using namespace std' están incluidas en el programa para usar las funciones estándar de entrada y salida como cin y cout. El ‘incluir ’ permitirá el uso de una tupla en el programa. El código completo se proporciona en la función main(). Una tupla 't' se declara con cinco elementos, . Se requiere que los valores para la tupla sigan el mismo orden. Como puede observar, ('a', 75, 5, 'z', 5.5) en la función make_tuple() están en el mismo orden que los valores declarados para la tupla. Después de ejecutar este código, no obtendrá nada a cambio que indique que la ejecución fue exitosa.



#incluir
#include
usando espacio de nombres estándar ;
En t principal ( )
{
tupla < carbonizarse , En t , En t , carbonizarse , flotar > t ;
t = hacer_tupla ( 'a' , 75 , 5 , 'Con' , 5.5 ) ;
    devolver 0 ;
}



Verifique la salida resultante que se muestra en la captura de pantalla a continuación:





Tenga en cuenta que el programa no devuelve nada. Imprimamos los valores de la tupla.



Ejemplo 2:
En este ejemplo, la función get() se usa en la tupla para mostrar sus valores. Los valores de las tuplas solo se pueden imprimir con la función get() en el lenguaje de programación c++. Vea el código a continuación.

Tenga en cuenta que usamos el mismo código y datos de muestra que usamos en el ejemplo anterior. Mediante el uso de la función make_tuple(), los valores se asignan con éxito a la tupla. La función get() se usa para acceder a los valores de la tupla haciendo referencia al número de índice que comienza en 0. Cada número de índice se asigna a la función get() y todos los valores de la tupla se imprimen con la instrucción cout.

#incluir
#include
usando espacio de nombres estándar ;
En t principal ( )
{
tupla < carbonizarse , En t , En t , carbonizarse , flotar > t ;
t = hacer_tupla ( 'a' , 75 , 5 , 'Con' , 5.5 ) ;
    En t i ;
    cout << 'Los valores de la tupla son: ' ;
    cout << obtener < 0 > ( t ) << ' ' << obtener < 1 > ( t ) << ' ' << obtener < 2 > ( t )
                      << ' ' << obtener < 3 > ( t ) << ' ' << obtener < 4 > ( t ) << final ;
    devolver 0 ;
}

Echa un vistazo a la salida de este código en la captura de pantalla que se muestra a continuación:

La función get() imprime los valores en el mismo orden en que se asignan a la tupla.

Ejemplo 3:
En este ejemplo, demostraremos el funcionamiento de la función tuple_size(). Con la ayuda de un ejemplo de muestra, explicaremos cómo obtener el tamaño de una tupla usando la función tuple_size. Echa un vistazo al código que se muestra a continuación.

El resto de las líneas de código son las mismas que se usaron en los ejemplos anteriores. La función tuple_size aquí obtendrá el tamaño de la tupla. El 'decltype' representa el tipo declarado utilizado para examinar el tipo de expresión dada.

#incluir
#include
usando espacio de nombres estándar ;
En t principal ( )
{
tupla < carbonizarse , En t , En t , carbonizarse , flotar > t ;
t = hacer_tupla ( 'a' , 75 , 5 , 'Con' , 5.5 ) ;
    En t i ;
    cout << 'El tamaño de la tupla es = ' ;
    cout << tuple_size < tipodecl ( t ) > :: valor << final ;
    devolver 0 ;
}

Cuando ejecute este código, se generará el siguiente resultado:

Asignamos 5 valores a la tupla y la función tuple_size() también devolvió el tamaño de la tupla 5.

Ejemplo 4:
Podemos concatenar las tuplas usando la función tuple_cat() y crear una nueva tupla a partir de ellas. Aquí, demostraremos el uso de la función tuple_cat() para concatenar dos tuplas.

En el código que se muestra a continuación, declaramos dos tuplas t1 y t2 y asignamos valores de 3/3 a cada tupla. Luego, usamos la función tuple_cat() para concatenar ambas tuplas y crear una nueva tupla a partir de ellas. Después de eso, simplemente imprimimos los valores de todas las tuplas usando la función get(). La función tuple_cat() toma las tuplas que deben concatenarse, combina los valores asignados a cada tupla y crea una nueva tupla a partir de ella.

Tenga en cuenta que las tuplas t1 y t2 tienen valores de 3/3 e imprimimos cada valor usando la función get() haciendo referencia desde el índice 0 al índice 2. Sin embargo, cuando se concatenan, los valores totales serán 6. Entonces, necesitamos para imprimir el índice de 0 a 5 para que se impriman todos los valores. Consulte el resultado a continuación y observe que se imprimen 3 valores en la tupla t1; Se imprimen 3 valores en la tupla 2. Sin embargo, se imprimen 6 valores de la tupla 3 ya que los valores concatenados en la nueva tupla son 6.

#incluir
#include
usando espacio de nombres estándar ;
En t principal ( )
{
tupla < carbonizarse , En t , flotar > t1 ( 'a' , 75 , 6.7 ) ;
tupla < En t , carbonizarse , flotar > t2 ( 10 , 't' , 77.9 ) ;
    auto t3 = tuple_cat ( t1, t2 ) ;
    cout << 'La primera tupla contiene =  ' ;
    cout << obtener < 0 > ( t1 ) << ' ' << obtener < 1 > ( t1 ) << ' ' << obtener < 2 > ( t1 ) << final << final ;
    cout << 'La segunda tupla contiene =  ' ;
    cout << obtener < 0 > ( t2 ) << ' ' << obtener < 1 > ( t2 ) << ' ' << obtener < 2 > ( t2 ) << final << final ;      
    cout << 'La nueva tupla es =' ;
    cout << obtener < 0 > ( t3 ) << ' ' << obtener < 1 > ( t3 ) << ' ' << obtener < 2 > ( t3 ) << ' '
          << obtener < 3 > ( t3 ) << ' ' << obtener < 4 > ( t3 ) << ' ' << obtener < 5 > ( t3 ) << final ;
    devolver 0 ;
}

Aquí está la salida:

Conclusión

Este artículo es una descripción general de las tuplas en el lenguaje de programación c++. La tupla en C++ es un objeto inmutable que lleva los valores de diferentes tipos de datos al mismo tiempo. Las tuplas no se pueden cambiar ni modificar en ningún punto de ejecución ya que son inmutables. Se pueden realizar varias funciones en las tuplas para lograr un determinado resultado, 4 de ellas se demuestran en este artículo con ejemplos de ejemplo.