Preguntas con la etiqueta [rust]

Lista rust preguntas

¿Cómo divido una cadena en Rust?

7
respuestas
369
votos
405.6k
vistas

Según la documentación , no está claro. En Java puedes usar el splitmétodo así: "some string 123 ffd".split("123");

¿Por qué los ejecutables de Rust son tan grandes?

7
respuestas
362
votos
99.5k
vistas

Encuentro particularmente interesante el enfoque y la forma en que definen el lenguaje en los dos primeros capítulos de la documentación. Así que decidí mojarme los dedos y comencé con

Implementé el siguiente método y prueba unitaria: use std::fs::File; use std::path::Path; use std::io::prelude::*; fn read_file(path: &Path) { let mut file = File::open(path).unwrap(); let mut contents = String::new(); file.read_to_string(&mut contents).unwrap(); println!("{contents}");

He estado escribiendo código de manejo de errores y noté este comportamiento interesante al manejar errores en diferentes posiciones. use std::io; fn into_test() -> std::io::Result<()> { let res: Result<(), ()>

Tengo un pequeño proyecto Rust en Github y agregué un archivo Rust.yml para las acciones para construir el proyecto y ejecutar las pruebas automáticamente. La compilación falla durante la compilación

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 &&

use serde::{Deserialize, Serialize}; #[derive(Serialize, Deserialize, Debug)] enum Animal { Cat(Option<String>), Dog(String), Bird, } fn main() { let json_animals = r#" [ {"Cat": "Meow"}, "Cat", {"Dog": "Bark"}, "Bird" ]"#; println!("{:?}", serde_json::from_str::<Vec<Animal>>(json_animals).unwrap());

Quiero escribir un programa que escriba un archivo en 2 pasos. Es probable que el archivo no exista antes de ejecutar el programa. El nombre del archivo es fijo. El

Estoy tratando de descubrir cómo hacer coincidir a Stringen Rust. Inicialmente intenté hacer coincidir así, pero descubrí que Rust no puede transmitir implícitamente desde std::string::Stringa &str. fn main() { let

Me cuesta entender cómo funciona la sintaxis de cadenas en Rust. Específicamente, estoy tratando de descubrir cómo hacer una cadena de varias líneas.

Escribí un programa que tiene el rasgo Animaly la estructura Dogque implementan el rasgo. También tiene una estructura AnimalHouseque almacena un animal como objeto de rasgo Box<Animal>. trait Animal {

He creado una estructura de datos en Rust y quiero crear iteradores para ella. Los iteradores inmutables son bastante fáciles. Actualmente tengo esto y funciona bien: // This is a

Dado este código: trait Base { fn a(&self); fn b(&self); fn c(&self); fn d(&self); } trait Derived : Base { fn e(&self); fn f(&self); fn g(&self); } struct S; impl

¿Qué son las vidas no léxicas?

0
respuestas
150
votos
25.1k
vistas

Rust tiene un RFC relacionado con vidas no léxicas que ha sido aprobado para su implementación en el lenguaje durante mucho tiempo. Recientemente , el soporte de Rust para esta

Estaba leyendo el capítulo sobre vidas del libro Rust y encontré este ejemplo para una vida con nombre/explícita: struct Foo<'a> { x: &'a i32, } fn main() { let x;