Что потребляет больше места для хранения - boost :: dynamic_bitset <> или необработанное хранилище? - PullRequest
0 голосов
/ 30 мая 2011

У меня есть вопрос по оптимизации хранилища программ.

У меня есть, скажем, 4096 "узлов", хранящихся в:

  boost::dynamic_bitset<>

Я сейчас рассматриваю возможность рефакторинга моей программы и сборки CKnot класс, который будет содержать bool.

Вопрос в том, что будет занимать больше места:

  • boost :: dynamic_bitset <> (4096, false);
  • Узел CKnot [4096] // содержит один бул

Спасибо

1 Ответ

6 голосов
/ 30 мая 2011

Набор битов будет значительно меньше, так как bool в C ++ должен иметь размер не менее байта, тогда как каждый бит в наборе битов - это точно, бит.

...