Есть ли максимальное количество элементов в std :: bitset? - PullRequest
1 голос
/ 30 марта 2012

Есть ли максимальное количество элементов в std::bitset?

В моем коде (VC ++ 2010) 1<<20 падает с переполнением стека, но 1<<19 работает.

(Я имею дело с огромными ресурсами.)

1 Ответ

1 голос
/ 30 марта 2012

Насколько я вижу, это не имеет никакого отношения к максимальному количеству элементов, поддерживаемых в bitset, но имеет отношение к количеству памяти, которое может быть выделено в стеке.На VS обычно максимальный объем памяти, который может быть выделен в стеке, составляет 1 МБ, и если вы превысите этот предел, вы получите переполнение стека.Если вам требуется больше, чем этот объем памяти, я бы предложил выделять память из кучи, используя new, а не в стеке.В таком случае выделение памяти не удастся, только если new действительно исчерпает память.

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