Учебники

Руст — Константа

Константы представляют значения, которые нельзя изменить. Если вы объявите константу, то ее значение не изменится. Ключевое слово для использования констант — const . Константы должны быть явно напечатаны. Ниже приведен синтаксис объявления константы.

const VARIABLE_NAME:dataType = value;

Соглашение о присвоении имен в Rust Constant

Соглашение об именовании для констант аналогично соглашению о переменных. Все символы в имени константы обычно в верхнем регистре. В отличие от объявления переменных, ключевое слово let не используется для объявления константы.

Мы использовали константы в Rust в примере ниже —

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
}

Константы v / s Переменные

В этом разделе мы узнаем о различиях между константами и переменными.

  • Константы объявляются с помощью ключевого слова const, а переменные объявляются с помощью ключевого слова let .

  • Объявление переменной может опционально иметь тип данных, тогда как объявление константы должно указывать тип данных. Это означает, что const USER_LIMIT = 100 приведет к ошибке.

  • Переменная, объявленная с использованием ключевого слова let, по умолчанию неизменна. Однако у вас есть возможность изменить его, используя ключевое слово mut . Константы неизменны.

  • Константы могут быть установлены только для константного выражения, а не для результата вызова функции или любого другого значения, которое будет вычислено во время выполнения.

  • Константы могут быть объявлены в любой области, включая глобальную область, что делает их полезными для значений, о которых должны знать многие части кода.

Константы объявляются с помощью ключевого слова const, а переменные объявляются с помощью ключевого слова let .

Объявление переменной может опционально иметь тип данных, тогда как объявление константы должно указывать тип данных. Это означает, что const USER_LIMIT = 100 приведет к ошибке.

Переменная, объявленная с использованием ключевого слова let, по умолчанию неизменна. Однако у вас есть возможность изменить его, используя ключевое слово mut . Константы неизменны.

Константы могут быть установлены только для константного выражения, а не для результата вызова функции или любого другого значения, которое будет вычислено во время выполнения.

Константы могут быть объявлены в любой области, включая глобальную область, что делает их полезными для значений, о которых должны знать многие части кода.

Затенение переменных и констант

Rust позволяет программистам объявлять переменные с одинаковыми именами. В таком случае новая переменная переопределяет предыдущую переменную.

Позвольте нам понять это на примере.

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

Приведенный выше код объявляет две переменные с именем зарплата. Первому объявлению присваивается значение 100,00, а второму объявлению присваивается значение 1,50. Вторая переменная скрывает или скрывает первую переменную при отображении вывода.

Выход

The value of salary is :1.50

Rust поддерживает переменные с разными типами данных при теневом копировании.

Рассмотрим следующий пример.

Код объявляет две переменные с именем uname . Первому объявлению присваивается строковое значение, тогда как второму объявлению присваивается целое число. Функция len возвращает общее количество символов в строковом значении.

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

Выход

name changed to integer: 9

В отличие от переменных, константы не могут быть скрыты. Если переменные в вышеупомянутой программе заменяются константами, компилятор выдаст ошибку.