【发布时间】:2011-03-09 06:17:50
【问题描述】:
我想用 C++ 做一个 bitset。我做了一些研究。我发现的所有示例都是这样的:
bitset<6> myBitset;
// do something with it
但是当我在我的类中定义变量时,我不知道位集的大小:
#include <bitset>
class Test
{
public:
std::bitset *myBitset;
}
这不会编译...
而且这样初始化也行不通:
int size = getDependentSizeForBitset();
myBitset = new bitset<size>();
【问题讨论】:
-
我不知道这是做什么用的,但如果它不会太大,你总是可以使用向量
。如果您在不允许提升的环境中工作(即糟糕的工作),这是一个特别好的选择。 -
这应该是一个答案,而不是评论。
-
std::vector
不仅更大,而且在驱使我提出这个问题的应用程序中显着变慢(~5x)。