Preguntas etiquetadas con rust

Rust es un lenguaje de programación de sistemas sin un recolector de basura enfocado en tres objetivos: seguridad, velocidad y concurrencia. Use esta etiqueta para preguntas sobre el código escrito en Rust. Use una etiqueta específica de la edición para las preguntas que se refieren al código que requiere una edición en particular, como [rust-2018]. Utilice etiquetas más específicas para subtemas como [rust-cargo] y [rust-macros].


5
¿Por qué los ejecutables de Rust son tan grandes?
Solo por haber encontrado Rust y haber leído los dos primeros capítulos de la documentación, encuentro el enfoque y la forma en que definieron el lenguaje particularmente interesante. Así que decidí mojarme los dedos y comencé con Hello world ... Lo hice en Windows 7 x64, por cierto. fn main() …
153 rust  rust-cargo 



3
¿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 …
140 rust 

1
¿Cuál es la forma de facto de leer y escribir archivos en Rust 1.x?
Con Rust siendo relativamente nuevo, he visto demasiadas formas de leer y escribir archivos. Muchos son fragmentos extremadamente desordenados que alguien ideó para su blog, y el 99% de los ejemplos que he encontrado (incluso en Stack Overflow) son de compilaciones inestables que ya no funcionan. Ahora que Rust es …
136 file-io  rust 


3
¿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 dos, pero no puedo …
130 rust 



1
No puede salir del contenido prestado / no puede salir de una referencia compartida
No entiendo el error cannot move out of borrowed content. Lo he recibido muchas veces y siempre lo he resuelto, pero nunca he entendido por qué. Por ejemplo: for line in self.xslg_file.iter() { self.buffer.clear(); for current_char in line.into_bytes().iter() { self.buffer.push(*current_char as char); } println!("{}", line); } produce el error: error[E0507]: …

2
¿Por qué no se recomienda aceptar una referencia a String (& String), Vec (& Vec) o Box (& Box) como argumento de función?
Escribí un código de Rust que toma &Stringcomo argumento: fn awesome_greeting(name: &String) { println!("Wow, you are awesome, {}!", name); } También he escrito código que toma una referencia a Veco Box: fn total_price(prices: &Vec<i32>) -> i32 { prices.iter().sum() } fn is_even(value: &Box<i32>) -> bool { **value % 2 == 0 …

3
¿Cuál es el equivalente del operador de combinación sobre un vector de cadenas?
No pude encontrar el equivalente de Rust para el operador "join" sobre un vector de Strings. tengo unVec<String> y me gustaría unirme a ellos como soltero String: let string_list = vec!["Foo".to_string(),"Bar".to_string()]; let joined = something::join(string_list,"-"); assert_eq!("Foo-Bar", joined); Relacionado: ¿Cuál es una forma idiomática de imprimir un iterador separado por espacios …
120 string  rust 

2
¿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á ahí?
117 rust 

1
¿Cuál es la forma correcta de devolver un iterador (o cualquier otro rasgo)?
El siguiente código de Rust se compila y se ejecuta sin problemas. fn main() { let text = "abc"; println!("{}", text.split(' ').take(2).count()); } Después de eso, intenté algo como esto ... pero no se compiló fn main() { let text = "word1 word2 word3"; println!("{}", to_words(text).take(2).count()); } fn to_words(text: &str) …
114 rust 

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.