Tupla C++

Tupla C



Trabalhar com qualquer linguagem de programação requer o uso de tuplas, listas, arrays, etc. Os arrays, listas e tuplas oferecem os mesmos serviços com pequenas diferenças. Uma tupla é um objeto que contém uma lista de ordem de itens. É como um array e uma lista, no entanto, ambos são mutáveis, mas a tupla é imutável. Um objeto imutável não pode sofrer alterações durante a execução. A lista e o array podem ser facilmente modificados, fatiados ou indexados, pois são mutáveis. Mas uma tupla não pode ser modificada, fatiada ou alterada, pois é um objeto imutável. Além disso, a lista e o array podem armazenar apenas um tipo de dados, mas uma tupla pode ter dados de vários tipos. Neste guia, discutiremos a função principal de uma tupla e como ela pode ser usada em um programa c++.

O que é uma Tupla em uma Linguagem de Programação C++?

Uma tupla em uma linguagem de programação C++ é um objeto que contém uma lista ordenada de itens. É um tipo de dados imutável, o que significa que os valores na tupla não podem ser alterados em nenhum ponto de execução. O valor de uma tupla é dado entre colchetes () separados por vírgula e pode ser acessado pela referência do índice. Existem muitas funções que podem ser executadas em uma tupla, ou seja, get(), swap(), tuple_size() e etc. Nas próximas seções, explicaremos o funcionamento das 4 funções com a ajuda de exemplos.

Exemplo 1:
Neste exemplo, criaremos uma tupla usando a função make_tuple(). O make_tuple() é usado em um programa c++ para atribuir valor a uma tupla. Os valores que precisam ser atribuídos à tupla devem estar na mesma ordem em que foram declarados na tupla. Vamos ver o código anexo abaixo para entender como a função make_tuple() funciona em um programa c++.







As bibliotecas ‘include ’ e ‘using namespace std’ estão incluídas no programa para usar as funções padrão de entrada e saída como cin e cout. O 'include ' permitirá o uso de uma tupla no programa. O código completo é fornecido na função main(). Uma tupla ‘t’ é declarada com cinco elementos, . Os valores para a tupla devem seguir a mesma ordem. Como você pode observar, (‘a’, 75, 5, ‘z’, 5.5) na função make_tuple() estão na mesma ordem que os valores declarados para a tupla. Depois de executar este código, você não receberá nada em troca indicando que a execução foi bem-sucedida.



#include
#include
usando namespace padrão ;
int a Principal ( )
{
tupla < Caracteres , int , int , Caracteres , flutuador > t ;
t = make_tuple ( 'uma' , 75 , 5 , 'Com' , 5,5 ) ;
Retorna 0 ;
}



Confira a saída resultante fornecida na captura de tela abaixo:





Observe que não há nada retornado pelo programa. Vamos imprimir os valores da tupla.



Exemplo 2:
Neste exemplo, a função get() é usada na tupla para exibir seus valores. Os valores das tuplas só podem ser impressos com a função get() na linguagem de programação c++. Veja o código abaixo.

Observe que usamos o mesmo código e dados de amostra que usamos no exemplo anterior. Usando a função make_tuple(), os valores são atribuídos com sucesso à tupla. A função get() é usada para acessar os valores da tupla referenciando o número de índice começando em 0. Cada número de índice é dado à função get() e todos os valores da tupla são impressos com a instrução cout.

#include
#include
usando namespace padrão ;
int a Principal ( )
{
tupla < Caracteres , int , int , Caracteres , flutuador > t ;
t = make_tuple ( 'uma' , 75 , 5 , 'Com' , 5,5 ) ;
int eu ;
cout << 'Os valores da tupla são: ' ;
cout << pegue < 0 > ( t ) << ' ' << pegue < 1 > ( t ) << ' ' << pegue < dois > ( t )
<< ' ' << pegue < 3 > ( t ) << ' ' << pegue < 4 > ( t ) << fim ;
Retorna 0 ;
}

Confira a saída deste código na captura de tela abaixo:

A função get() imprime os valores na mesma ordem em que são atribuídos à tupla.

Exemplo 3:
Neste exemplo, vamos demonstrar o funcionamento da função tuple_size(). Com a ajuda de um exemplo de exemplo, explicaremos como obter o tamanho de uma tupla usando a função tuple_size. Confira o código abaixo.

O resto das linhas de código são as mesmas usadas nos exemplos anteriores. A função tuple_size aqui obterá o tamanho da tupla. O 'decltype' representa o tipo declarado usado para examinar o tipo de determinada expressão.

#include
#include
usando namespace padrão ;
int a Principal ( )
{
tupla < Caracteres , int , int , Caracteres , flutuador > t ;
t = make_tuple ( 'uma' , 75 , 5 , 'Com' , 5,5 ) ;
int eu ;
cout << 'O tamanho da tupla é = ' ;
cout << tuple_size < tipo decl ( t ) > :: valor << fim ;
Retorna 0 ;
}

Ao executar este código, a seguinte saída será gerada:

Atribuímos 5 valores à tupla e a função tuple_size() também retornou o tamanho da tupla 5.

Exemplo 4:
Podemos concatenar as tuplas usando a função tuple_cat() e criar uma nova tupla a partir delas. Aqui, vamos demonstrar o uso da função tuple_cat() para concatenar duas tuplas.

No código abaixo, declaramos duas tuplas t1 e t2 e atribuímos valores 3/3 a cada tupla. Em seguida, usamos a função tuple_cat() para concatenar ambas as tuplas e criar uma nova tupla a partir delas. Depois disso, simplesmente imprimimos os valores de todas as tuplas usando a função get(). A função tuple_cat() pega as tuplas que precisam ser concatenadas, combina os valores atribuídos a cada tupla e cria uma nova tupla a partir dela.

Observe que as tuplas t1 e t2 têm valores 3/3 e imprimimos cada valor usando a função get() referenciando do índice 0 ao índice 2. No entanto, quando eles são concatenados, os valores totais serão 6. Portanto, precisamos para imprimir o índice de 0 a 5 para que todos os valores sejam impressos. Confira a saída abaixo e observe que 3 valores são impressos na tupla t1; 3 valores são impressos na tupla 2. No entanto, 6 valores são impressos na tupla 3, pois os valores concatenados na nova tupla são 6.

#include
#include
usando namespace padrão ;
int a Principal ( )
{
tupla < Caracteres , int , flutuador > t1 ( 'uma' , 75 , 6.7 ) ;
tupla < int , Caracteres , flutuador > t2 ( 10 , 't' , 77,9 ) ;
auto t3 = tuple_cat ( t1,t2 ) ;
cout << 'A primeira tupla contém =  ' ;
cout << pegue < 0 > ( t1 ) << ' ' << pegue < 1 > ( t1 ) << ' ' << pegue < dois > ( t1 ) << fim << fim ;
cout << 'A segunda tupla contém =  ' ;
cout << pegue < 0 > ( t2 ) << ' ' << pegue < 1 > ( t2 ) << ' ' << pegue < dois > ( t2 ) << fim << fim ;
cout << 'A nova tupla é = ' ;
cout << pegue < 0 > ( t3 ) << ' ' << pegue < 1 > ( t3 ) << ' ' << pegue < dois > ( t3 ) << ' '
<< pegue < 3 > ( t3 ) << ' ' << pegue < 4 > ( t3 ) << ' ' << pegue < 5 > ( t3 ) << fim ;
Retorna 0 ;
}

Aqui está a saída:

Conclusão

Este artigo é uma visão geral das tuplas na linguagem de programação c++. A tupla em c++ é um objeto imutável que carrega os valores de diferentes tipos de dados ao mesmo tempo. As tuplas não podem ser alteradas ou modificadas em nenhum ponto de execução, pois são imutáveis. Várias funções podem ser executadas em tuplas para obter um determinado resultado, 4 delas são demonstradas neste artigo com exemplos de exemplo.