Forward References
Both function and class names must be defined before they can be used.
A forward declaration asserts that a particlular name represents a class but gives no further information.
It permits pointers to be declared to the class but not to invoke methods defined by the class or the creation of instances of the class.