互いに派生する 3 つのクラスがあります。GameScreen は、MenuScreen の派生元の基本クラスです。次に、「MenuScreen」から派生した 3 番目のクラス「TitleScreen」があります。
フローは基本的に基本クラスからのものです: 'GameScreen' -> 'MenuScreen' -> 'TitleScreen'
基本クラス「GameScreen」には、「TitleScreen」と同様にコンストラクターにパラメーターがありませんが、「MenuScreen」のパラメーターが必要です。現在、ヘッダーファイルは次のとおりです。
GameScreen.h
class GameScreen
{
public:
GameScreen();
}
MenuScreen.h
class MenuScreen : public GameScreen
{
public:
MenuScreen(std::string title);
}
TitleScreen.h
class TitleScreen : public MenuScreen
{
public:
TitleScreen(std::string title) : MenuScreen(title);
}
私が理解しようとしているのは、これが C++ で可能かどうかということです (これを行う Game State Management の C# サンプルに従っています)。私のサンプルの基本クラスにはパラメーターがないため、基本クラスから継承されたパラメーターのみをカバーしているいくつかの本のクラス継承を読んでいます。