Как исправить «Недостаточно памяти» в динамических массивах в C ++ - PullRequest
0 голосов
/ 02 апреля 2012

Я пытаюсь построить динамический массив в c ++ следующим образом:

int **matrix = 0;    
matrix = new int * [dim];
for (int i = 0; i < dim; i++)
    matrix[i] = new int[dim];

, когда «dim» превышает s из 90000, программа вылетает и выдает мне недостаточно памяти (она превышает 2 ГБ ОЗУ)

есть идеи как это исправить?Любое другое решение, пожалуйста?

Ответы [ 2 ]

3 голосов
/ 02 апреля 2012

Чтобы выделить более 2 ГБ памяти, вам необходимо скомпилировать программу и запустить ее для 64-разрядной операционной системы.

1 голос
/ 02 апреля 2012

Вы можете попробовать параметр / 3GB, который должен дать вам дополнительно 1 ГБ в потребительских (то есть: не серверных) версиях 32-битных окон.

Подробная информация о ключе / 3GB

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...