Как хранить большое количество элементов в массиве?

Подскажите, как хранить данные, количество которых превышает максимальное значение типа int? По индексу не обратишься...
  • Вопрос задан
  • 335 просмотров
Пригласить эксперта
Ответы на вопрос 6
@endemic
Если я не ошибаюсь, в качестве индекса массива используется size_t, который соответствует максимальному размеру памяти для процессора с даннйо битностью. То есть описанная вами ситуация не может произойти в принуципе.

ru.cppreference.com/w/cpp/types/size_t
Ответ написан
EugeneP2
@EugeneP2
Java Dev
Для индекса использовать тип long

а для хранения использовать несколько массивов максимального размера и в зависимости от значение индекса вычислять реальный индекс нужного массива
Ответ написан
Neuroware
@Neuroware
Программист в свободное от работы время
относительно любого языка можно построить структуру, в которой будет массив ссылок на другие массивы и функцию GetValue с любым типом в качестве параметра, далее определять в каком массиве лежит в данный элемент, например как результат деления параметра на максимальное количество элементов в массиве, остаток от такого деления будет номер элемента в массиве. Но по сути наличие потребности в таком большом массиве говорит о некорректности архитектуры приложения, нужно пересматривать саму задачу.
Ответ написан
AxisPod
@AxisPod
Как с такими размерами данных вы работать собираетесь вообще? Тут уже копать в сторону отображения файлов в память надо.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы