а0
б1
+🚫
🔒 ФиксированныйМассив — изменить нельзя
ФиксированныйМассив — неизменяемая версия массива. Создаётся из обычного массива (или любой коллекции, поддерживающей Для Каждого) и после этого не может быть изменён.
Массив = Новый Массив;
Массив.Добавить("а");
Массив.Добавить("б");
ФиксМассив = Новый ФиксированныйМассив(Массив);
ФиксМассив.Количество(); // 2 — методы чтения работают как обычно
ФиксМассив.Добавить("в"); // ошибка: метод не найден — Добавить/Вставить/Удалить/Установить/Очистить у типа нетЕсть только методы чтения — Получить(), Массив[Индекс], Найти(), Количество(), ВГраница(), обход Для Каждого. Обратно в обычный массив — через конструктор Новый Массив(ФиксМассив) (платформа 8.3+, разворачивает и вложенные фиксированные массивы):
НовыйМассив = Новый Массив(ФиксМассив);Зачем нужен: неизменяемые типы можно использовать как ключ кэша (ПовторноеИспользованиеЗначений) и как значение по умолчанию для параметров — обычный Массив для этого не годится именно из-за изменяемости. Этот же приём (обычный → фиксированный → обычный) используется как короткий способ скопировать массив.
← Массивы