c++ - 如何在 C++ 中存储位数组?

标签 c++ stl bitmap containers bitarray

在 C++ 中存储位数组的最佳方式是什么(没有 Boost,只有标准容器),例如表示卷分配位图?

我以为std::vector<bool>是个好主意,但是apparently it's Evil and deprecated ,那么有没有更好的选择呢?

还有:

如果我在内存中有一个字节数组,我该如何将它们复制到推荐的容器中?
(我无法为 vector<bool> 解决这个问题。)

最佳答案

std::bitset会做,只要你的位数组是固定大小。
作为旁注,还有 std::dynamic_bitset,但我不能 100% 确定它已成为标准。

关于c++ - 如何在 C++ 中存储位数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7829854/

相关文章:

c++ - 将 1 加到 N,在新行中打印每个总和(递归)

c++ - 错误 : ‘int’ is not a class, 结构或 union 类型`

c++ - 遍历多组结构

c# - 在 Xamarin.Android 中使用位图出现 OutOfMemoryException

java - 从位图更改位深度

java - 如何改变位图的大小?

C++定义的?宏?在 header 中可见但在实现中丢失(链接器报告外部未解决)

c++ - 成员函数的正式定义

c++ - 在 C++ 中将通用构造函数分配给成员变量时的 std::move 或 std::forward

c++ - 如何轻松检查 std::map 和 std::unordered_map 是否包含相同的元素