Rust · Intermediário · Inglês · Técnico
lifetime
Trecho do programa durante o qual uma referência é válida. Anotações como 'a dizem ao compilador como as vidas de várias referências se relacionam.
Onde usar
Surge em funções que devolvem referências e em structs que guardam referências. O erro 'missing lifetime specifier' pede essa anotação.
Em código
fn maior<'a>(
a: &'a str,
b: &'a str,
) -> &'a str {
if a.len() > b.len() { a } else { b }
}Exemplos
This function needs a lifetime annotation.
Essa função precisa de uma anotação de lifetime.
The returned reference can't outlive the input.
A referência devolvida não pode viver mais que a entrada.
Cuidado
Lifetime não prolonga a vida de um valor: ela só descreve uma relação que o compilador confere.
Sinônimos
tempo de vida