Я использую std::bitset и пытаюсь создать два массива std::bitset размером 100 000 000 000.C++

Программы на C++. Форум разработчиков
Anonymous
Я использую std::bitset и пытаюсь создать два массива std::bitset размером 100 000 000 000.

Сообщение Anonymous »

Я использую std::bitset и пытаюсь создать два массива std::bitset размером 100 000 000 000.
В результате программа занимает всего 298 МБ моей оперативной памяти, а должна заполнить ~24 ГБ. У меня 32 ГБ ОЗУ и сейчас свободно 26 ГБ. Когда я собираю свой код для x86, он компилируется и может запускаться, но для x64 он показывает следующее: ошибка C2148: общий размер массива не должен превышать 0x7fffffff байт.
Как это исправить и не уменьшать размер массивов битовых наборов?

Я пытался создать 2 глобальных массива.
Кроме того, я установил в Microsoft Visual Studio -> проект -> свойства name_project -> свойства конфигурации -> компоновщик -> система -> Размер резервного стека до 25 000 000 (я думаю, что должно быть КБ, поэтому думаю, что я установил ~ 25 ГБ).

Код: Выделить всё

... // other libraries
#include 

std::bitset mas;
std::bitset a1;

int main() {.../* work with the arrays */...}
Я хочу запустить код с огромными массивами std::bitset.

UPD: для x86 — ок, а что для x64? мой код проверяет целые массивы и в какой-то момент останавливается.

Подробнее здесь: https://stackoverflow.com/questions/578 ... h-size-100

Вернуться в «C++»