As expressões lambda são uma das características mais poderosas em C++. Lambda é introduzido no 11º versão do C ++ e também está disponível nas versões C ++ 14 e 17.
Sempre que precisamos de um ponteiro de função em nosso programa, nesse caso em particular, podemos usar Lambda. Ele fornece opções adicionais ao programador C ++ para escrever uma definição de função sem definir uma função. Agora discutimos detalhes sobre o conceito de expressão de lambda.
Sintaxe Lambda
A sintaxe lambda consiste principalmente em três partes. Eles são
Onde [] é chamado de lista de captura.
() é chamado de argumento da função.
é chamado de corpo de função.
Os elementos de Lambda
Defina e chamando uma função
int main ()
[] 90 // Lista de captura e parâmetro.
cout<< “The coding and expression part of Lambda” << endl ;
(); // Brace Open and Close invocará na expressão de Lambda.
retornar 0;
Exemplo de programação 1
#incluir
usando namespace std;
struct trippleValue // define um objeto de função .
int operator () (int valor)
valor de retorno * 3;
;
int main ()
TriPlipValue TV; // criação de objetos .
int t = tv (2);
cout<< “ The Cube value is ” << t << endl ;
retornar 0;
Saída
Explicação
Aqui queremos explicar onde os lambdas são realmente aplicados ao programa. Para fazer isso, aqui, criamos um objeto de função chamado TV. O nome da classe é TrippleValue. Por isso, criamos a TV do objeto da classe TrippleValue, que obterá um valor e o transformará em um valor de cubo. Dentro da função principal, criamos uma TV de objeto e passamos um valor de 2. Agora imprima o valor de t; Mostra o resultado 8. Porque o cubo de 2 é 8.
Será observável que os lambdas não sejam usados no programa acima. Agora, o mesmo tipo de programa será executado com a ajuda da expressão de lambda de uma maneira muito eficiente no próximo programa.
Exemplo de programação 2
#incluir
usando namespace std;
int main ()
Auto V = [] (int Value) Retorno Valor * 2; ; // A expressão lambda é usada aqui.
int t = v (2);
cout<< << t << endl ;
retornar 0;
Saída
Explicação
Agora fizemos o mesmo programa com a ajuda da expressão de lambda. Aqui declaramos uma variável v que é uma variável de tipo automático, onde armazenamos o valor que a expressão lambda retornará. Fazemos esse cálculo em uma única linha. Agora passamos um valor 2 dentro da variável v e o armazenamos dentro da variável T. Na próxima linha do programa, simplesmente imprimimos a variável t. Mostra o resultado 4. À medida que retornamos um valor dentro da expressão lambda como valor * 2.
Exemplo de programação 3
#incluir
#incluir
#incluir
int main ()
std :: vetor vc 10, 20, 30, 40;
std :: for_each (vc.begin (), vc end (), [] (int n)
cout<< << n * n << endl ;
);
retornar 0;
Saída
Explicação
Aqui pegamos um vetor chamado VC, que leva alguns valores 10, 20, 30 e 40. Queremos encaixar cada elemento no vetor. Para isso, usamos o loop for_each. Dentro do parêntese do loop for_each, usamos uma expressão de lambda. Dentro de seu corpo, simplesmente encaixamos esses valores de vetor.
Benefícios do uso de lambda
Conclusão
Discutindo detalhes sobre o conceito do tópico de expressão lambda em C ++, chegamos à conclusão de que é um dos conceitos poderosos de C++. Através da expressão lambda, podemos facilmente ser feitos um código de programação de maneira eficiente. Se conseguirmos entender o conceito de lambda e seus usos, então com a ajuda da expressão de lambda, podemos resolver muitas respostas de programação com muita facilidade.