Óxido - constante

Las constantes representan valores que no se pueden cambiar. Si declara una constante, no hay forma de que cambie su valor. La palabra clave para usar constantes esconst. Las constantes deben escribirse explícitamente. A continuación se muestra la sintaxis para declarar una constante.

const VARIABLE_NAME:dataType = value;

Convención de nomenclatura constante de óxido

La convención de nomenclatura de las constantes es similar a la de las variables. Todos los caracteres de un nombre constante suelen estar en mayúsculas. A diferencia de declarar variables, ellet La palabra clave no se utiliza para declarar una constante.

Hemos utilizado constantes en Rust en el siguiente ejemplo:

fn main() {
   const USER_LIMIT:i32 = 100;    // Declare a integer constant
   const PI:f32 = 3.14;           //Declare a float constant

   println!("user limit is {}",USER_LIMIT);  //Display value of the constant
   println!("pi value is {}",PI);            //Display value of the constant
}

Constantes v / s Variables

En esta sección, aprenderemos sobre los factores diferenciadores entre constantes y variables.

  • Las constantes se declaran utilizando el const palabra clave mientras que las variables se declaran utilizando la let palabra clave.

  • Una declaración de variable puede tener opcionalmente un tipo de datos, mientras que una declaración constante debe especificar el tipo de datos. Esto significa que const USER_LIMIT = 100 resultará en un error.

  • Una variable declarada usando el letLa palabra clave es inmutable por defecto. Sin embargo, tiene la opción de mutarlo usando elmutpalabra clave. Las constantes son inmutables.

  • Las constantes se pueden establecer solo en una expresión constante y no en el resultado de una llamada de función o cualquier otro valor que se calculará en tiempo de ejecución.

  • Las constantes se pueden declarar en cualquier ámbito, incluido el ámbito global, lo que las hace útiles para valores que muchas partes del código necesitan conocer.

Sombreado de variables y constantes

Rust permite a los programadores declarar variables con el mismo nombre. En tal caso, la nueva variable anula la variable anterior.

Entendamos esto con un ejemplo.

fn main() {
   let salary = 100.00;
   let salary = 1.50 ; 
   // reads first salary
   println!("The value of salary is :{}",salary);
}

El código anterior declara dos variables por el nombre salario. A la primera declaración se le asigna un valor de 100,00 mientras que a la segunda declaración se le asigna un valor de 1,50. La segunda variable sombrea u oculta la primera variable mientras muestra la salida.

Salida

The value of salary is :1.50

Rust admite variables con diferentes tipos de datos durante el sombreado.

Considere el siguiente ejemplo.

El código declara dos variables por el nombre uname. A la primera declaración se le asigna un valor de cadena, mientras que a la segunda declaración se le asigna un número entero. La función len devuelve el número total de caracteres en un valor de cadena.

fn main() {
   let uname = "Mohtashim";
   let uname = uname.len();
   println!("name changed to integer : {}",uname);
}

Salida

name changed to integer: 9

A diferencia de las variables, las constantes no se pueden sombrear. Si las variables del programa anterior se reemplazan por constantes, el compilador arrojará un error.

fn main() {
   const NAME:&str = "Mohtashim";
   const NAME:usize = NAME.len(); 
   //Error : `NAME` already defined
   println!("name changed to integer : {}",NAME);
}