主にポリモーフィズムの演習である単純なチェスゲームを作成しようとしています。抽象クラスchessmenを作成し、そこからチェスの駒を継承することになっています。ここで、すべてのピースに対して、本質的に同じことを行う getColor ()やgetRank( ) のようないくつかのメソッド (非仮想) が必要であると判断したため、ベースのチェスの駒にそのようなメソッドがある方が便利だと考えました。仕事をするためのクラス。しかし、それを正しく行う方法があるかどうかはわかりませんでした。簡単なテスト コードを書いて、問題なく動作するかどうかを確認しましたが、出力は明らかに正しくありませんでした。
だから私は尋ねています、それを行う方法はありますか?
編集:私のtest.cppコード
class Dad
{
public:
virtual void Void() =0;
bool biT;
bool getBit(){return biT;}
};
class Kid: public Dad
{
public:
void Void(){}
};
int main()
{
Dad* dP = new Kid;
cout<<dP->getBit();
}
出力は197のようなもので、boolではありません。