Preguntas etiquetadas con rust

140
¿Cómo creo un singleton mutable global?

¿Cuál es la mejor manera de crear y usar una estructura con solo una instanciación en el sistema? Sí, esto es necesario, es el subsistema OpenGL, y hacer múltiples copias de esto y pasarlo por todas partes agregaría confusión, en lugar de aliviarla. El singleton debe ser lo más eficiente posible....

130
¿Cómo incluir un módulo de otro archivo del mismo proyecto?

Siguiendo esta guía creé un proyecto Cargo. src/main.rs fn main() { hello::print_hello(); } mod hello { pub fn print_hello() { println!("Hello, world!"); } } que corro usando cargo build && cargo run y se compila sin errores. Ahora estoy tratando de dividir el módulo principal en...

117
¿Qué hace 'let x = x' en Rust?

Vi este código en la naturaleza : fields.sort_by_key(|&(_, ref field)| field.tags().into_iter().min().unwrap()); let fields = fields; ¿Qué hace la let fields = fields;línea? ¿Por qué está

114
¿Cuándo implementa un cierre Fn, FnMut y FnOnce?

¿Cuáles son las condiciones específicas para un cierre que ejecute el Fn, FnMuty FnOncerasgos? Es decir: ¿Cuándo un cierre no implementa el FnOncerasgo? ¿Cuándo un cierre no implementa el FnMutrasgo? ¿Cuándo un cierre no implementa el Fnrasgo? Por ejemplo, mutar el estado del cierre en su...

104
¿Es posible usar variables globales en Rust?

Sé que, en general, se deben evitar las variables globales. Sin embargo, creo que en un sentido práctico, a veces es deseable (en situaciones en las que la variable es parte integral del programa) utilizarlos. Para aprender Rust, actualmente estoy escribiendo un programa de prueba de base de datos...

103
¿Cómo utilizar una caja local no publicada?

Hice una biblioteca: cargo new my_lib y quiero usar esa biblioteca en un programa diferente: cargo new my_program --bin extern crate my_lib; fn main { println!("Hello, World!"); } ¿Qué debo hacer para que esto funcione? No están en la misma carpeta del proyecto. . ├── my_lib └──...

102
¿Cómo buscar e insertar en un HashMap de manera eficiente?

Me gustaría hacer lo siguiente: Busque una Vecclave determinada y guárdela para su uso posterior. Si no existe, cree un vacío Vecpara la clave, pero manténgalo en la variable. ¿Cómo hacer esto de manera eficiente? Naturalmente, pensé que podría usar match: use std::collections::HashMap; //...

102
Dividir un módulo en varios archivos

Quiero tener un módulo con múltiples estructuras, cada una en su propio archivo. Usando un Mathmódulo como ejemplo: Math/ Vector.rs Matrix.rs Complex.rs Quiero que cada estructura esté en el mismo módulo, que usaría desde mi archivo principal, así: use Math::Vector; fn main() { //...