Exploración de constantes 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, se nos introduce el concepto de constantes en Rust, que se pueden declarar utilizando las palabras clave const o static, con anotaciones de tipo explícitas, y se pueden acceder en cualquier ámbito, incluyendo el ámbito global.

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL rust(("Rust")) -.-> rust/BasicConceptsGroup(["Basic Concepts"]) rust(("Rust")) -.-> rust/DataTypesGroup(["Data Types"]) rust(("Rust")) -.-> rust/FunctionsandClosuresGroup(["Functions and Closures"]) rust/BasicConceptsGroup -.-> rust/variable_declarations("Variable Declarations") rust/BasicConceptsGroup -.-> rust/constants_usage("Constants Usage") rust/DataTypesGroup -.-> rust/integer_types("Integer Types") rust/DataTypesGroup -.-> rust/string_type("String Type") rust/FunctionsandClosuresGroup -.-> rust/function_syntax("Function Syntax") rust/FunctionsandClosuresGroup -.-> rust/expressions_statements("Expressions and Statements") subgraph Lab Skills rust/variable_declarations -.-> lab-99275{{"Exploración de constantes en Rust"}} rust/constants_usage -.-> lab-99275{{"Exploración de constantes en Rust"}} rust/integer_types -.-> lab-99275{{"Exploración de constantes en Rust"}} rust/string_type -.-> lab-99275{{"Exploración de constantes en Rust"}} rust/function_syntax -.-> lab-99275{{"Exploración de constantes en Rust"}} rust/expressions_statements -.-> lab-99275{{"Exploración de constantes en Rust"}} end

constantes

Rust tiene dos tipos diferentes de constantes que se pueden declarar en cualquier ámbito, incluyendo el global. Ambos requieren una anotación de tipo explícita:

  • const: Un valor inmutable (el caso común).
  • static: Una variable posiblemente mutable con una duración de 'static. La duración estática se infiere y no tiene que especificarse. Acceder o modificar una variable estática mutable es unsafe.
// Las variables globales se declaran fuera de todos los demás ámbitos.
static LANGUAGE: &str = "Rust";
const THRESHOLD: i32 = 10;

fn is_big(n: i32) -> bool {
    // Acceder a una constante en alguna función
    n > THRESHOLD
}

fn main() {
    let n = 16;

    // Acceder a una constante en el hilo principal
    println!("This is {}", LANGUAGE);
    println!("The threshold is {}", THRESHOLD);
    println!("{} is {}", n, if is_big(n) { "big" } else { "small" });

    // Error! No se puede modificar una `const`.
    THRESHOLD = 5;
    // FIXME ^ Comenta esta línea
}

Resumen

¡Felicitaciones! Has completado el laboratorio de Constantes. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.