Доступный объем памяти в Visual Studio C ++ - PullRequest
0 голосов
/ 01 июля 2011

Я разрабатываю игру "пирамида", в которой используется минимаксное дерево, которое ищет "лучший" ход ... но моя игра зависает.

Мой вывод заключается в том, что это проблема с памятью, но я используютолько 124kb памяти.Сколько памяти я могу выделить с новым оператором?Или какой предел памяти назначен моему приложению по умолчанию.

Ответы [ 5 ]

2 голосов
/ 01 июля 2011

ОС решает, сколько памяти вы сможете выделить в каждый момент времени, и на ваш вопрос невозможно ответить.

Я бы был вами, я бы показал неисправный код вместо того, чтобы думать, что что-то не так делает компилятор или окружение. 124 КБ - ничто на большинстве платформ.

Если он не выбрасывает bad_alloc, я действительно сомневаюсь, что ваш новый вызов потерпит неудачу. Это, конечно, не настоящая проблема.

1 голос
/ 02 июля 2011

Вы также можете рассмотреть возможность переполнения стека.Особенно, если ваш алгоритм включает в себя рекурсию.

0 голосов
/ 02 июля 2011

Вероятно, вы не потребляете всю память, но вы потребляете весь процессор! Проверьте логику своей игровой программы.

0 голосов
/ 01 июля 2011

Не думаю, что из-за проблем с памятью ваша игра зависнет до того, как она вылетит.Возможно, у вас где-то есть бесконечный цикл.Если бы у вас была проблема с памятью, я бы подумал, что вы получите какое-то сообщение об ошибке, а не проблему с циклом, где она просто зависнет.

0 голосов
/ 01 июля 2011

По умолчанию ограничения отсутствуют.

Если вы выделяете небольшие объекты, их обычно можно получить от 1 до 1,5 ГБ в 32-битной Windows.

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