2012-07-06 10 views
5

の作成私はdynamic_bitsetsの配列を作成します。だから私は使用してdynamic_bitsetのベクトル、Cでのブーストdynamic_bitsetのベクトル++

vector<boost::dynamic_bitset<>> v;

どのように私はこれらのdynamic_bitsetsのそれぞれのサイズを指定することができますを作成し、すなわちV [0]、V [1]など?一般的な場合と同様に、コンストラクタでサイズを指定します。

boost::dynamic_bitset<> x(3); 

答えて

8

このライン

vector<boost::dynamic_bitset<>> v; 

空のベクトルを作成します。通常、あなたが

vector<boost::dynamic_bitset<>> v(N, boost::dynamic_bitset<>(3)) ; 

を行うことができNエントリすべて1のベクトルを作成するために

vector<int> v(N, 1); 

を行うようなので、代わりに、あなたは、すべてが同じ値を持つデフォルトエントリで満たされることを要求している可能性が3ビットのNboost::dynamic_bitset<>が含まれています。

あなたのベクトルは、あなたが現在行うように空のベクトルを作成し、ちょうど適切なサイズを追加するv.push_back(boost::dynamic_bitset<>(42))のようなものを使用することができv[i]

v[i] = boost::dynamic_bitset<>(100) ; 

異なるサイズへの代替を設定することができるはず十分な要素が含まれている場合要素。

+0

ありがとうございます。今私はどのように要素にアクセスすべきかをはっきりと理解しています。いくつかの方法でそれを行う例を提供してくれてありがとう。 :) – SyncMaster

関連する問題