Resultados da pesquisa a pedido "rust"

3 a resposta

Retornar String local como uma fatia (& str)

Existem várias perguntas que parecem ter o mesmo problema que estou tendo. Por exemplo, ...

1 a resposta

Qual é o tipo inferido de um vetor de fechamento?

Tentei criar vetor de fechamentos: fn main() { let mut vec = Vec::new(); vec.push(Box::new(|| 10)); vec.push(Box::new(|| 20)); println!("{}", vec[0]()); println!("{}", vec[1]()); } Isso gerou o seguinte relatório de erro: error[E0308]: ...

1 a resposta

Como posso converter um buffer de uma fatia de bytes (& [u8]) em um número inteiro?

Estou lendo dados brutos de um arquivo e quero convertê-los em um número inteiro: fn main() { let buf: &[u8] = &[0, 0, 0, 1]; let num = slice_to_i8(buf); println!("1 == {}", num); } pub fn slice_to_i8(buf: &[u8]) -> i32 { unimplemented!("what ...

2 a resposta

Como o Rust fornece semântica de movimentação?

oSite do idioma Rust [http://www.rust-lang.org/]as reivindicações movem a semântica como um dos recursos do idioma. Mas não vejo como a semântica de movimentos é implementada no Rust. As caixas de ferrugem são o único local em que a semântica de ...

1 a resposta

Como posso compartilhar referências entre threads?

Não consigo compartilhar uma referência entre threads. trait Facade { /*some functions*/ } struct Client<'a> { facade: &'a mut Facade, join_grd: thread::JoinGuard<'a()>, } impl<'a> Client<'a> { pub fn new(my_facade: &'a mut Facade) -> Client<'a> ...

1 a resposta

Como posso compactar mais de dois iteradores?

Existe uma maneira mais direta e legível de realizar o seguinte: fn main() { let a = [1, 2, 3]; let b = [4, 5, 6]; let c = [7, 8, 9]; let iter = a.iter() .zip(b.iter()) .zip(c.iter()) .map(|((x, y), z)| (x, y, z)); }Ou seja, como criar um ...

2 a resposta

Como soma um vetor usando fold?

este [https://doc.rust-lang.org/book/iterators.html]O tutorial sobre ferrugem explica ofold() mecanismo bem, e este código de exemplo: let sum = (1..4).fold(0, |sum, x| sum + x);funciona como esperado. Eu gostaria de executá-lo em um vetor, ...

1 a resposta

Qual é a diferença entre `usize` e` u32`?

A documentação dizusize é Operações e constantes para números inteiros não assinados do tamanho de ponteiros. Na maioria dos casos, eu posso substituirusize comu32 e nada acontece. Então eu não entendo por que precisamos de dois tipos que são ...

2 a resposta

Vários empréstimos mutáveis durante uma pesquisa de árvore em profundidade

Como alguém reestruturaria essa função que faz uma pesquisa profunda e retorna o pai do nó correspondente? Sei que variações desse problema ocorrem com muita frequência (por exemplo, Vários empréstimos mutáveis ao gerar uma estrutura em árvore ...

1 a resposta

Criando um sistema de retorno de chamada usando fechamentos

Estou tentando criar algo como um "sistema de retorno de chamada". Por exemplo, há uma janela e alguns botões nela. A janela define retornos de chamada para cada botão. Ambos os retornos de chamada devem alterar o estado da janela. O compilador ...