Ejemplos de Uso de Enum en Rust

RustRustBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, tenemos un ejemplo en Rust similar a C que demuestra cómo usar enum como enumeraiones en C, incluyendo enumeraiones con discriminadores implícitos y explícitos.

Nota: Si el laboratorio no especifica un nombre de archivo, puede usar cualquier nombre de archivo que desee. Por ejemplo, puede usar main.rs, compilar y ejecutarlo con rustc main.rs &&./main.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL rust(("Rust")) -.-> rust/FunctionsandClosuresGroup(["Functions and Closures"]) rust(("Rust")) -.-> rust/DataTypesGroup(["Data Types"]) rust/DataTypesGroup -.-> rust/integer_types("Integer Types") rust/DataTypesGroup -.-> rust/type_casting("Type Conversion and Casting") rust/FunctionsandClosuresGroup -.-> rust/function_syntax("Function Syntax") rust/FunctionsandClosuresGroup -.-> rust/expressions_statements("Expressions and Statements") subgraph Lab Skills rust/integer_types -.-> lab-99255{{"Ejemplos de Uso de Enum en Rust"}} rust/type_casting -.-> lab-99255{{"Ejemplos de Uso de Enum en Rust"}} rust/function_syntax -.-> lab-99255{{"Ejemplos de Uso de Enum en Rust"}} rust/expressions_statements -.-> lab-99255{{"Ejemplos de Uso de Enum en Rust"}} end

Similar a C

enum también se puede usar como enumeraiones en C.

// Un atributo para ocultar advertencias de código no utilizado.
#![allow(dead_code)]

// enum con discriminador implícito (empieza en 0)
enum Number {
    Zero,
    One,
    Two,
}

// enum con discriminador explícito
enum Color {
    Red = 0xff0000,
    Green = 0x00ff00,
    Blue = 0x0000ff,
}

fn main() {
    // Las `enums` se pueden convertir en enteros.
    println!("cero es {}", Number::Zero as i32);
    println!("uno es {}", Number::One as i32);

    println!("las rosas son #{:06x}", Color::Red as i32);
    println!("las violetas son #{:06x}", Color::Blue as i32);
}

Resumen

¡Felicidades! Has completado el laboratorio Similar a C. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.