Константы представляют значения, которые нельзя изменить. Если вы объявите константу, то ее значение не изменится. Ключевое слово для использования констант — 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
В отличие от переменных, константы не могут быть скрыты. Если переменные в вышеупомянутой программе заменяются константами, компилятор выдаст ошибку.