Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我知道无法动态分配位集,因为它们基于模板参数。但是为什么要以这种方式实现位集?
谢谢
这样做是为了确保位集具有尽可能接近无符号整数的特征(否则,它被广泛用于表示位集)。其中之一,负责作为模板参数的大小是没有隐式动态内存分配的要求。
对于动态大小比其他特征更重要的情况,可以使用boost dynamic_bitset。
效率?因为它是一个常见的用例?如果您想要动态位集,请考虑vector<bool>. 它甚至还定义了一些位操作。但请先阅读此内容。
vector<bool>