diff --git a/src/ch10-00-generics.md b/src/ch10-00-generics.md index 1c32ea0aa4..70584573cf 100644 --- a/src/ch10-00-generics.md +++ b/src/ch10-00-generics.md @@ -42,7 +42,7 @@ mecânicas com tipos genéricos para extrair uma função genérica! Do mesmo mo que você reconhece código duplicado para extrair para uma função, você começará a reconhecer código duplicado que pode usar tipos genéricos. -Considere um pequeno programa que acha o maior número em uma lsita, mostrado +Considere um pequeno programa que acha o maior número em uma lista, mostrado na Listagem 10-1: Nome do arquivo: src/main.rs @@ -157,7 +157,7 @@ fn main() { ``` Listagem 10-3: Código abstraído para encontrar o maior -numḿero em duas listas +número em duas listas A função tem o parâmetro, `list`, que representa qualquer corte concreto de valores `i32` que podemos passar para uma função. O código na definição da diff --git a/src/ch10-01-syntax.md b/src/ch10-01-syntax.md index 7d6243f2e0..cdda3b24fe 100644 --- a/src/ch10-01-syntax.md +++ b/src/ch10-01-syntax.md @@ -153,7 +153,7 @@ tenha um trait em particular na próxima sessão, mas vamos deixar isso de lado por um momento e explorar outros lugares que podemos usar parâmetros de tipos genéricos primeiro. -### Usando Tipos de Dados Genéros em Definições de Structs +### Usando Tipos de Dados Genéricos em Definições de Structs Nós podemos definir structs para usar um parâmetro de tipo genérico em um ou mais campos de um struct com a sintaxe `<>` também. A listagem 10-6 mostra a diff --git a/src/ch10-03-lifetime-syntax.md b/src/ch10-03-lifetime-syntax.md index ee1101dc53..6b64e912e6 100644 --- a/src/ch10-03-lifetime-syntax.md +++ b/src/ch10-03-lifetime-syntax.md @@ -49,7 +49,7 @@ valor saiu de escopo > #### Variáveis Não Inicializadas Não Podem Ser Usadas > -> Os próximos exemplos declaram vaŕiáveis sem darem a elas um valor inicial, +> Os próximos exemplos declaram variáveis sem darem a elas um valor inicial, > então o nome da variável existe no escopo exterior. Isso pode parecer um > conflito com Rust não ter null. No entanto, se tentarmos usar uma variável > antes de atribuir um valor a ela, nós teremos um erro em tempo de compilação. @@ -137,7 +137,7 @@ concreto e discutimos como Rust analisa tempos de vida para garantir que referências sempre serão válidas, vamos falar sobre tempos de vidas genéricos de parâmetros e retornar valores no contexto das funções. -### Tempos de Vida Génericos em Funções +### Tempos de Vida Genéricos em Funções Vamos escrever uma função que retornará a mais longa de dois cortes de string. Nós queremos ser capazes de chamar essa função passando para ela dois cortes @@ -164,7 +164,7 @@ Note que queremos que a função pegue cortes de string (que são referências, como falamos no Capítulo 4) já que não queremos que a função `maior` tome posse de seus argumentos. Nós queremos que uma função seja capaz de aceitar cortes de uma `String` (que é o tipo de variável `string1`) assim como literais de string -(que é o que a variável `strin2` contém). +(que é o que a variável `string2` contém). Recorra à seção do Capítulo 4 "Cortes de Strings como Parâmetros" para mais discussões sobre porque esses são os argumentos que queremos. @@ -258,7 +258,7 @@ genérico. Vamos olhar para anotações de tempo de vida no contexto da função `maior` que estamos trabalhando. Assim como parâmetros de tipos genéricos, parâmetros de tempos de vida genéricos precisam ser declarados dentro de colchetes angulares -entre o nome da função e a lista de parâmetros. A limitanção que queremos +entre o nome da função e a lista de parâmetros. A limitação que queremos dar ao Rust é que para as referências nos parâmetros e o valor de retorno devem ter o mesmo tempo de vida, o qual nomearemos `'a` e adicionaremos para cada uma das referências como mostrado na Listagem 10-23: @@ -375,7 +375,7 @@ Se tentarmos compilar isso, receberemos esse erro: ```text error: `string2` does not live long enough | -6 | resultadod = longest(string1.as_str(), string2.as_str()); +6 | resultado = longest(string1.as_str(), string2.as_str()); | ------- borrow occurs here 7 | } | ^ `string2` dropped here while still borrowed @@ -407,7 +407,7 @@ ver se você está certo! ### Pensando em Termos de Tempos de Vida O modo exato de especificar parâmetros de tempos de vida depende do que sua -função está fazendo. Por exemplo, se mudaramos a implementação da função +função está fazendo. Por exemplo, se mudarmos a implementação da função `maior` para sempre retornar o primeiro argumento ao invés do corte de string mais longo, não precisaríamos especificar um tempo de vida no parâmetro `y`. Este código compila: