Resultados da pesquisa a pedido "rust"

2 a resposta

Como vincular vários campos de uma estrutura em caixa sem obter o erro "usar valor movido"?

Estou tentando codificar uma estrutura de dados recursiva genérica. Como se vê, não posso, pois estou atingindo uma parede quando quero acessar mais de um campo de um valor de estrutura de propriedade. Eu defino uma estrutura que manterá uma ...

1 a resposta

Qual é o layout de memória de um vetor de matrizes?

São variáveis do tipoVec<[f3; 5]> armazenado como uma matriz contígua (deVec::len() * 5 * sizeof(f32) bytes) ou é armazenado comoVec de ponteiros?

1 a resposta

Como faço para compartilhar um objeto mutável entre threads?

Estou tentando compartilhar um objeto mutável entre threads no Rust usandoArc, mas recebo este erro: error: cannot borrow immutable borrowed content as mutable --> src/main.rs:13:13 | 13 | shared_stats_clone.add_stats(&stats); | ...

1 a resposta

Por que o Iterator :: take_ while se apropria do iterador?

Acho estranho queIterator::take_while [https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.take_while]assume a propriedade do iterador. Parece um recurso útil para poder tirar a primeirax elementos que satisfazem alguma função, mas ...

1 a resposta

Quais são as diferenças entre especificar parâmetros de vida útil em um impl ou em um método?

No Rust 1.3.0, oDeref [https://doc.rust-lang.org/1.3.0/std/ops/trait.Deref.html] característica tem a seguinte assinatura na documentação: pub trait Deref { type Target: ?Sized; fn deref(&'a self) -> &'a Self::Target; } Eu o implementaria sem ...

1 a resposta

Por que é possível implementar o Read em uma referência imutável ao File?

Se você verificar odocumentos paraRead [http://doc.rust-lang.org/std/io/trait.Read.html], a maioria dos métodos aceita um&mut self. Isso faz sentido, pois a leitura de algo geralmente atualiza um deslocamento interno, portanto a próxima leitura ...

2 a resposta

É possível estender uma implementação de método padrão de uma característica em uma estrutura?

Nas linguagens orientadas a objetos tradicionais (por exemplo, Java), é possível "estender" a funcionalidade de um método em uma classe herdada chamando o método original da superclasse na versão substituída, por exemplo: class A { public void ...

1 a resposta

Como crio uma função de retorno de chamada Rust para passar para uma função FFI?

É assim que a API C se parece void mosquitto_connect_callback_set(struct mosquitto *mosq, void (*on_connect)(struct mosquitto *, void *, int));rust-bindgen gerou isso para mim pub fn mosquitto_connect_callback_set(mosq: *mut Struct_mosquitto, ...

2 a resposta

Por que o tipo de retorno Deref :: deref é uma referência?

Eu estava lendo os documentos para o RustDeref [http://doc.rust-lang.org/std/ops/trait.Deref.html]traço: pub trait Deref { type Target: ?Sized; fn deref(&self) -> &Self::Target; }A assinatura de tipo para oderef a função parece contra-intuitiva ...

9 a resposta

Por que as vidas explícitas são necessárias no Rust?

Eu estava lendo ocapítulo das vidas [https://doc.rust-lang.org/book/first-edition/lifetimes.html]do livro Rust e me deparei com este exemplo por um tempo de vida nomeado / explícito: struct Foo<'a> { x: &'a i32, } fn main() { let x; // -+ x goes ...