Sintaxe:
modelo < class T > swap void (t & variável_1, t & variável_2);Tanto o valor da primeira variável quanto a segunda variável, ambos os valores da loja, devem ser trocados. A função apenas alterna os valores das variáveis; não tem saída.”
Trabalho de Swap () Função em C++
A função Swap é implementada em C ++ usando as três linhas a seguir.
Modelo Void Swap (T & I, T&J)A afirmação “t temp = std :: move (i)”; faz uma cópia do elemento "eu" e duplica -o. Aqui, “i = std :: move (j)”; descarta os itens originais de "i" e armazena a cópia "i" de "j" no lugar do "j" original. A fórmula “j = std :: move (temp)”; salve "eu" com um clone de temperatura e remova o conteúdo idêntico da temperatura. Além disso, exclua a variável temp após a execução da função swap ().
Exemplo 1: Programar usando o método STD :: Mover para trocar
Como demonstrado abaixo, podemos trocar dois objetos usando o recurso C ++ 11 Std :: Mover.
#incluirTemos uma declaração de modelo que tem um objeto "t". Depois disso, estabelecemos a função como "troca". A função leva os dois parâmetros e a & b, do tipo "t". Como resultado dos argumentos T&A, T&B referenciando ou armazenando o endereço da variável passada e se aplica diretamente a eles sem retornar, a função Swap (T&A, T&B) é chamada de chamada por referência.
Dentro da troca de vazios, aplicamos o algoritmo de troca usando o método STD :: Mover. Em seguida, construímos os principais do programa. Aqui, declaramos a variável "lista" e a inicializamos com a lista de valores numéricos. Definimos os valores para o "eu" e "j" para trocar. O valor numérico localizado no segundo índice foi substituído pelo valor numérico no quinto índice. Em seguida, chamamos a função de troca e passamos os índices "i" e "j" para trocar. O loop for usado para imprimir a lista trocada.
A saída exibiu a lista modificada. Você pode observar a nova lista gerada trocou o valor de acordo com os índices especificados.
Exemplo 2: Programar usando o método STD :: Swap para trocar
Utilizando o mecanismo de troca de std :: encontrado no cabeçalho da utilidade (em C ++ 11) é a correção usual. Os valores de dois objetos são alterados para fazê -lo funcionar.
#incluirAo importar o arquivo de cabeçalho, podemos acessar a função de troca em nosso programa. Aqui, incluímos o arquivo de cabeçalho com duas bibliotecas mais importantes. Então, estabelecemos o método principal int. Dentro da principal do programa, declaramos o vetor criando a variável “ARR.”A variável“ arr ”é inicializada com os cinco elementos do número inteiro. As posições do índice são atribuídas ao "eu" e "j" para trocar. As variáveis “i” e “j” são passadas para o método STD :: Swap para a troca do valor do índice especificado. Com o loop for, imprimimos as matrizes trocadas.
A lista obtida após a operação de troca usando o método STD :: Swap é exibida da seguinte forma:
Exemplo 3: Programa usando o método STD :: ITER_SWAP para trocar
O uso do algoritmo STD :: iter_swap, que está listado no cabeçalho do algoritmo, é uma opção adicional. A maneira como opera é alterar os valores dos objetos que os iteradores, apontam para.
#incluirPara o método principal do programa, declaramos uma variável de vetor "VEC" e atribuímos uma lista de vetores de números. Em seguida, especificamos a posição do índice para a variável "i" e "j". O método std :: iter_swap é invocado que leva o iter1 e o iter2 como um argumento. O ITER1 e o ITER2 são declarados com a palavra -chave automática e têm a operação de iteração. O método de loop for imprime os valores trocados da matriz vetorial após a execução.
O método std :: iter_swap trocou com sucesso os valores dos vetores especificados.
Exemplo 4: Programa de uso sem variáveis temporárias para trocar
Este exemplo mostra uma nova maneira de trocar números no código C ++ sem o uso de variáveis temporárias.
#incluirVamos examinar a operação deste programa. Aqui, declaramos x1 e x2, que são inicialmente definidos com o número, respectivamente. Então, usando a fórmula x1 = x1+ x2, adicionamos x1 e x2 e colocamos o resultado em x1. Isso indica que x1 é igual a 2 mais 12. Portanto, agora é igual a 14. Em seguida, aplicamos a fórmula x2 = x1 - x2. Isso indica que x2 = 14 - 12. Portanto, x2 agora é igual a 2. Mais uma vez, aplicamos a fórmula x1 = x1 - x2. Isso indica que x1 = 14 - 2. Portanto, x1 = 12 no final. Como resultado, os números foram trocados.
O número trocado antes e depois é exibido na tela pronta seguinte.
Conclusão
Aqui, analisamos uma descrição completa de Swap () em C ++, seu uso e alguns exemplos que mostram como ele funciona. Ao usar a função std :: swap (), os valores de duas variáveis podem ser alternados. O STL C ++ inclui uma função interna chamada std :: swap (). As chamadas de função Swap (T & Variable 1, T & Variable 2) por referência, e as sobrecargas C ++ Swap (), dependendo do tipo de variáveis de dados também são explicadas neste tutorial.