O que é uma Closure?
Parte da seção Logic & Flow do Journey de Rust da Coddy — lição 59 de 66.
Uma closure é uma função anônima que você pode armazenar em uma variável ou passar como argumento para outras funções. Ao contrário de funções regulares que você define com a palavra-chave fn, closures são criadas inline e não precisam de um nome.
A sintaxe básica para uma closure usa barras verticais para definir parâmetros, seguidas pelo corpo da função:
|param1, param2| {
// o corpo da função vai aqui
}Aqui está um exemplo simples de uma closure que soma dois números:
let add = |x, y| x + y;
let result = add(5, 3); // o resultado é 8Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Folha de consulta
Uma closure é uma função anônima que pode ser armazenada em uma variável ou passada como um argumento. Closures usam barras verticais || para definir parâmetros:
|param1, param2| {
// corpo da função
}Exemplo de uma closure:
let add = |x, y| x + y;
let result = add(5, 3); // o resultado é 8Experimente você mesmo
Esta lição não inclui um desafio de código.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Logic & Flow
1Fluxo de Controle Avançado
A Expressão 'match'Correspondência de Múltiplos ValoresCorrespondência de IntervalosA Expressão 'if let'Loops como ExpressõesRecapitulação - Parser de Comandos Simples4Agrupando Dados com Structs
O que é uma Struct?Visão Geral de StructsAcessando Campos de uma StructStructs MutáveisStructs como Parâmetros de FunçãoTuple StructsRecapitulação - Criando uma Struct Book7Tratando Erros com 'Result'
O que é um 'Result'?Usando 'match' com 'Result'is_ok() e is_err()Atalhos: unwrap e expectO Operador de Interrogação '?'Parsing de Strings para NúmerosRecapitulação - Função de Divisão Segura10Closures & Funções Anônimas
O que é uma Closure?Definindo uma Closure SimplesClosures com ParâmetrosCapturando o AmbienteRecapitulação - Closure de Soma Simples2Introdução a Vetores
O que é um Vetor?Criando um VetorAdicionando Elementos com pushAcessando Elementos do VetorIterando sobre um VetorIteração MutávelRemovendo ElementosRecapitulação - Rastreador de Pontuação Básico5Pares Chave-Valor com Hash Maps
O que é um Hash Map?Criando um Hash MapInserindo Pares Chave-ValorAcessando ValoresIterando sobre um Hash MapAtualizando um ValorRemovendo um ParRecapitulação - Contador de Palavras8Projeto: Inventário Simples de Itens
Configuração do ProjetoAdicionando um ItemVerificando o EstoqueVendendo um ItemJuntando tudo3Lista de Tarefas via Linha de Comando
Configuração do ProjetoAdicionando uma TarefaVisualizando Todas as TarefasRemovendo uma TarefaCódigo Final