1


0

その割り当てのサインはどういう意味ですか

次の行の割り当てがわかりません。 * setBit *は関数ですが、値が割り当てられていると思います。

bool setBit(const unsigned int which) = 0;

3 Answer


11


それは割り当てではありません。 http://en.wikipedia.org/wiki/Pure_virtual_function#Abstract_classes_and_pure_virtual_functions [純粋な仮想関数]を示します。 1つ以上の純粋な仮想関数を持つクラスは「抽象クラス」と呼ばれ、単独でインスタンス化することはできません。 派生クラスは、それ自体が抽象クラスであることを避けるために、関数を実装する必要があります。 したがって、ここでの「= 0」の意味は、「私の派生クラスがこの機能を提供する」ということです。


4


これは仮想機能です。 関数を宣言して0を割り当てると、実装なしで関数を作成しています

このクラスを継承すると、この関数の具体的な実装を作成できます


3


bool_の前に_virtual_という単語を見逃したと思います。 クラス内の_abstract_関数の宣言です。 C ++では、抽象関数は_pure virtual_関数と呼ばれ、宣言の最後に = 0_を指定することにより、コンパイラーに抽象であることを伝えます。