Resultados da pesquisa a pedido "lifetime"

1 a resposta

Que membro do sindicato se torna ativo após a colocação de novos

Em relação a este código: #include <string> int main() { union u { u() { i = 0; } ~u() {} int i; std::string s1; std::string s2; } u; new (&u) std::string{}; } [intro.object] / 2 [https://timsong-cpp.github.io/cppwp/n4659/intro.object#2] diz ...

2 a resposta

Como faço para formatar! retornar um & str a partir de uma expressão condicional?

Eu me deparei com este problema em queformat! cria um valor temporário em um padrão que não está ancorado em nada, tanto quanto eu o entendo. let x = 42; let category = match x { 0...9 => "Between 0 and 9", number @ 10 => format!("It's a {}!", ...

1 a resposta

Por que é possível ter várias referências mutáveis com vida útil estática no mesmo escopo

Por que posso ter várias referências mutáveis para um tipo estático no mesmo escopo? Meu código [https://play.rust-lang.org/?gist=1b6f7813c35facba71783ca15ae1b4e6]: static mut CURSOR: Option<B> = None; struct B { pub field: u16, } impl B { ...

2 a resposta

Como atribuir à variável usada na expressão de correspondência dentro de um ramo de correspondência?

Estou tentando implementar uma função geraljoin() que pode funcionar em qualquer iterador de iteradores. Estou com um problema com o verificador de empréstimo em ummatch expressão dentro donext() implementação de método. Aqui está uma ...

2 a resposta

Como chamo uma função que requer uma vida útil estática com uma variável criada em main?

Eu tenho uma estrutura definida que tem uma função que define uma vida estática: impl MyStruct { pub fn doSomething(&'static self) { // Some code goes here } }Eu estou consumindo do main assim: fn main() { let obj = MyStruct {}; ...

1 a resposta

O que são vidas não-lexicais?

A ferrugem tem umRFC [https://github.com/rust-lang/rfcs/blob/master/text/2094-nll.md]relacionados a vidas não-lexicais queFoi aprovado [https://github.com/rust-lang/rfcs/pull/2094] para ser implementado na linguagem por um longo ...

1 a resposta

Empréstimo mutável em um loop

Eu tenho o seguinte código: struct Baz { x: usize, y: usize, } struct Bar { baz: Baz, } impl Bar { fn get_baz_mut(&mut self) -> &mut Baz { &mut self.baz } } struct Foo { bar: Bar, } impl Foo { fn foo(&mut self) -> Option<&mut Baz> { for i in ...

1 a resposta

Como especificar limites de vida útil para um fechamento envolvendo referências a variáveis locais intermediárias?

Estou tentando escrever uma função como a seguinte no Rust: fn double_and_square<'a, T>(x: &'a T) -> /* whatever the output type of `&t * &t` is */ { let t = x + x; &t * &t }Eu quero que ele funcione em tipos ondeT é nãoCopy. Eu preciso ...

1 a resposta

Qual é a diferença entre '& self' e '&' a self '?

Recentemente, tive um erro que foi simplesmente resolvido alterando impl<'a> Foo<'a> { fn foo(&'a self, path: &str) -> Boo<'a> { /* */ } }para impl<'a> Foo<'a> { fn foo(&self, path: &str) -> Boo { /* */ } }o que não fazia sentido de acordo com ...

1 a resposta

Como resolver erro de vida útil para referência mutável em Rust?

Não sei por que o código a seguir não é compilado. use std::cmp::Ordering; struct MyItr<'a> { cur: &'a i32, } impl<'a> Ord for MyItr<'a> { fn cmp(&self, other: &MyItr) -> Ordering { self.cur.cmp(&other.cur) } } impl<'a> PartialOrd for MyItr<'a> ...