変数を使ってビットセットのサイズを設定する方法を知りたいと思います。たとえば、変数を使ってビットセットのサイズを設定する
// obtain file size:
fseek (rFile , 0 , SEEK_END);
numberOfBytes = ftell (rFile);
rewind (rFile);
const unsigned long long buffSize = numberOfBytes * 8;
std::bitset<buffSize> buffer;
バッファー定数の値が定数式で使用できないというエラーメッセージが表示されます。私は、現在読んでいるファイルのサイズにビットセットを設定する方法を探しています。
テンプレートパラメータとして変数を使用することはできません。また、非const変数を使用してconst変数を初期化することもできません。それは残酷な世界ですが、あなたはそれを飲み込む必要があります。 –
コンパイラは、定数値を指定しないとそのサイズをどのようにするのかを知っていますか?いくつかの標準ライブラリコンテナは、コンパイル後に任意にサイズ変更することができます。その違いを知るために、ドキュメントを注意深く読んでください。 – tadman
あなたは 'std :: vector'を使い果たすことができますか? –