question regarding oop

Simen Kjaeraas simen.kjaras at
Sat Jun 28 14:06:44 PDT 2008

Moritz <mpipahl at> wrote:

> Hello everyone,
> Im new to the D language and have a question regarding a slightly  
> advanced matter:
> Im currently porting the code of a game Im writing to D, and right now  
> Im working on the event handling (reacting to user input).
> Since Im doing a strategy game, I have several menues and I need a way  
> to connect a menu to the state my game is in, so when the player clicks  
> somewhere, I can use the hashtable to determine which menu class should  
> react.
> I think an asossiative array is the way I should go, key would be the  
> state my game is in and the value would be the corresponding Menu.
> But since there are several different menu classes, I need some way to  
> put them all in the value area of the array.
> In C++, I could make them all inherit from a specific base class, and  
> use the base class as data type for the value, so I effectively had  
> different menues in one datatype in that hashmap.
> How can I do this in D?

The exact same way, for one.

class Menu

class DerivedMenu : Menu

Menu[GameState] menuArray;


menuArray[currentGameState] = new DerivedMenu();

-- Simen

More information about the Digitalmars-d-learn mailing list