Переменные

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

Типы переменных

Изменяемые переменные:

Неизменяемые переменные:

  • Переменные, значение которых нельзя изменить.

Переменные неизменяемы в Rust по умолчанию в целях безопасности. Однако мы изменим изменчивость переменных

Пример: изменение неизменяемой переменной

fn main() {
let x = 5;
println!("The value of x is:
{}", x);
x = 6;
println!("The value of x is:
{}", x);
}
Result

Эта программа выдаст ошибку времени компиляции, потому что мы попытаемся изменить значение неизменяемой переменной.
Пример: изменение изменяемой переменной

fn main() {
let mut x = 5;
println!("The value of x is:
{}", x);
x = 6;
println!("The value of x is:
{}", x);
}
Result:

Значение х равно 5

Значение х равно 6

Константы

Константы — это значения, которые гарантируют репутацию и обычно содержат те значения, которые мы не хотим изменять.
Константы объявляются с использованием ключевого слова const, поэтому тип значения должен быть аннотировано. Синтаксис: const MAX_POINTS: u32 = 100_000;
Для констант в Rust соглашение об именах заключается в использовании всех прописных букв с подчеркиванием между словами.
Константы используются только как жестко запрограммированные значения, которые вы хотели бы использовать повсюду. вашей программы.
Константы в основном объявляются в любой области, включая всемирную, что делает их полезными для значений, которые должны быть реализованы во многих частях кода.

Пример: скорость солнечного света, пи(π)

Затенение

Затенение заключается в том, что объяснение замены переменной с эквивалентным именем из-за предыдущей переменной, и поэтому новая переменная затеняет предыдущую переменную.
Переменная часто затеняется с заменой типа. Для например. Строка часто затеняется как целое число.
мы затеняем переменную, используя эквивалентное имя переменной и повторяя использование ключевого слова let.

Пример: затенение переменной

fn main() {
let x = 5;
let x = x + 1;
let x = x * 2;
println!("The value of x
is: {}", x);
}
Result:

Значение х равно 12

Примечание. Переменная остается неизменной.

Разница между теневым копированием и изменчивостью

Разница между mut и теневым копированием заключается в том, что мы фактически создаем замещающую переменную, когда
снова используем ключевое слово let; мы изменим тип значения, но повторно используем эквивалентное имя.
мы получим ошибку времени компиляции, если случайно попытаемся переназначить значение неизменяемой переменной без использования ключевого слова let.
Мы измените вид тени, но повторно используйте эквивалентное имя.

Пример: изменение типа данных путем затенения

let spaces = " ";
let spaces = spaces.len();
Note:  this may  change  the info  type from string to integer.
Example
let mut spaces = " ";
spaces = spaces.len();
Note: By using ‘mut’ we aren't allowed to vary the info sort of the variable.

Для получения более подробной информации посетите: https://www.technologiesinindustry4.com/2020/10/Rust-variable-mutability.html#more