Введение в многомерность в Rust
Элементом набора бывает другой набор. Таблица устроена так: сначала выбирают ряд, потом ячейку в этом ряду. Одного номера уже мало, нужны номер ряда и номер места. Такую вложенность называют многомерностью.
Два уровня дают таблицу. Три уровня складывают таблицы в стопку: сначала слой, затем ряд, затем ячейка. Так держат оценки группы по предметам, клетки поля или записи по отделам.
Вкладывать можно массив, вектор и карту. Массив задает размер навсегда, вектор векторов позволяет менять длину рядов. Карта хранит карты. Внешний ключ выбирает внутреннюю карту, внутренний ключ - значение в ней. Наборы смешивают: вектор карт, карта векторов, массив векторов.
К данным идут снаружи внутрь. Сначала берут ряд, слой или внешний ключ, и только потом ячейку внутри. Заполняют и обходят в том же порядке.