パラメータの1つがbitset<size>
であるC++でクラスを作成したいと思います。 私は、そのクラスのどのオブジェクトでもこの "サイズ"を変える機能を与えたいが、そのオブジェクトに対しては一定でなければならない。引数ビットセットを持つ<class_name>の問題
私は変数const int size;
を作成し、コンストラクタでそれを初期化した場合bitset<size>
をwrititingにクラスのすべてのオブジェクトに対して、それは同じになるだろうどの静的であるとsize
を必要とするので、それはコンパイルされません。
クラステンプレートを作成し、サイズをclassname<size>
として渡す以外の方法はありますか?
ありがとうございますが、これは、このFooクラスのオブジェクトをコンポジション(データメンバーとしてのオブジェクト)として使用するときはいつでも...そのクラステンプレートを再度作成する必要があります。私はクラスを作成し、(#define BIT_SIZE 16をFooビットに渡しました;)Foo <> :: Foo()に定義されていないコンパイルエラーを出しています。ここで、Foo()はコンストラクタです。コンパイル時にも動作するはずだと思いました。私はちょうどサイズBIT_SIZEビットを作りたいと思っていました。私は私の "次のレベル"クラスのテンプレートを作る必要がありますか?これらのエラーは他の間違いのためであった可能性があります。しかし、私はそれを何度もチェックしました。
はい先生、私はそれを実装しますが、私は、CPPファイルにこれらを変更したときにヘッダファイルとcppのないファイルを..........含まれている...複数の宣言エラーが来ました。私はLinuxのubuntu ..に取り組んでいます。私はこれらのファイルをWindowsのdev_cppに取り込んでいました。コンパイラが自動的に行う必要があることが原因である可能性があります。それで私は何をする必要があるのですか?
あなたの質問にはどのような話がありますか?あなたは誰に返信していますか? –