Crear Enums en Rust
Los Enums
son una forma de representar un conjunto de valores relacionados. En Rust, se implementan como un tipo integral con variantes.
La palabra clave enum
se usa para crear un tipo enum
, y la palabra clave variant se usa para declarar variantes. La variante puede contener cualquier número de constantes denominadas enumeradores, y las variantes también pueden tener métodos, que se denominan funciones asociadas o constantes asociadas.
En este artículo, discutiremos el concepto Rust Enums
.
Declarar un enum
en Rust
La palabra clave enum
se utiliza para crear una enumeración. Se puede utilizar para definir un tipo con varios valores diferentes.
- Cree la definición
enum
con la palabra claveenum
, seguida del nombre del tipo enumerado, seguido de una lista de valores entre llaves ({}
). - Cree instancias de este tipo con el mismo nombre que el tipo y luego asigne a cada instancia un valor de su lista correspondiente.
- La palabra clave
case
se usa para crear ramas en una definiciónenum
.
Inicializar enum
con valores en Rust
Asignamos un enum
con un valor a una variable para inicializarla con valores. El nombre enum
se escribe primero, seguido de los operadores de dos puntos dobles y el nombre del valor enum
.
Finalmente, se especifica un valor entre paréntesis.
Código de ejemplo:
#[derive(Debug)]
enum Demo {
A(i32),
B(i32)
}
fn main() {
let hello = Demo::A(1);
let byew = Demo::B(0);
println!("Hello: {:?}", hello);
println!("Bye: {:?}", byew);
}
Producción :
Hello: A(1)
Bye: B(0)
Beneficios de enum
en Rust
Un enum
es un tipo de datos que contiene un conjunto de valores relacionados. Es como una matriz, pero no tiene que preocuparse por quedarse sin espacio o reasignar memoria al agregar más elementos.
Las ’enumeraciones’ son mejores porque son más explícitas y menos propensas a errores que usar una cadena para cada valor posible. Enums
también permite verificaciones en tiempo de compilación que aseguran que no asigne el tipo incorrecto a una variable o escriba mal una de las variantes en su código.
Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.
Facebook