Building the PlayableCharacter class
Now that we know the basics of inheritance, polymorphism, and pure virtual functions, we will put them to use. We will build a PlayableCharacter
class that has most of the functionality that any character from our game is going to need. It will have one pure virtual function, known as handleInput
. The handleInput
function will need to be quite different in the sub-classes, so this makes sense.
As PlayableCharacter
will have a pure virtual function, it will be an abstract class and no objects of it will be possible. We will then build the Thomas
and Bob
classes, which will inherit from PlayableCharacter
, implement the definition of the pure virtual function, and allow us to instantiate Bob
and Thomas
objects in our game. It will not be possible to instantiate a PlayableCharacter
instance directly, but we wouldn't want to because it is too abstract anyway.
Coding PlayableCharacter.h
As usual when creating a class, we will start off...