我想创建一个dynamic_bitsets 数组。所以我创建了一个 dynamic_bitset 的向量,
vector<boost::dynamic_bitset<>> v;
如何指定每个动态位集的大小,即 v[0]、v[1] 等?就像在一般情况下,我们通过构造函数指定大小。
boost::dynamic_bitset<> x(3);
这条线
vector<boost::dynamic_bitset<>> v;
创建一个空向量。相反,您可以要求它填充所有具有相同值的默认条目,所以就像通常一样
vector<int> v(N, 1);
创建一个包含N
所有条目的向量 1 你可以做
vector<boost::dynamic_bitset<>> v( N, boost::dynamic_bitset<>(3) ) ;
让它包含N
boost::dynamic_bitset<>
s 和 3 位。
如果您的向量包含足够的元素,您应该能够将其设置v[i]
为不同的大小
v[i] = boost::dynamic_bitset<>( 100 ) ;
或者,您可以像现在一样创建一个空向量,然后使用类似v.push_back(boost::dynamic_bitset<>(42))
添加正确大小的元素。