Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsPmArLT 127 of 373 menu
◀ ▶

Длина массива в типе в Rust

Тип массива включает длину. Запись из трех чисел имеет тип [i32; 3], а из двух - [i32; 2]. Это разные типы, хотя элементы в обоих случаях целые i32.

Переменная, созданная для трех ячеек, не принимает массив из двух и наоборот. Такой перенос не собирается:

let arr1 = [1, 2, 3]; let arr2 = [4, 5]; arr1 = arr2;

Компилятор сравнивает типы целиком. Длина 3 и длина 2 дают несовместимые типы, поэтому присваивание отклоняется еще на этапе сборки. Отдельно объявить имя для массива другой длины без нового let тоже нельзя:

let data = [10, 20, 30]; data = [10, 20];

Дан следующий код:

let a = [1, 2]; let b = [3, 4, 5]; a = b;

Скажите, соберется ли программа.

Даны переменные:

let row = [7, 8, 9];

Скажите, можно ли записать в row массив из двух чисел без нового объявления.

Назовите тип массива из двух чисел 5 и 6 в виде [i32; N], подставив вместо N нужное число.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить