Resultados da pesquisa a pedido "rust"
Retornar String local como uma fatia (& str)
Existem várias perguntas que parecem ter o mesmo problema que estou tendo. Por exemplo, ...
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]: ...
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 ...
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 ...
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> ...
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 ...
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, ...
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 ...
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 ...
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 ...