An abstract class is a class that
contains at least one pure virtual
function. An abstract class is used as
base class for deriving specific
classes of the same kind. It defines
properties common to other classes
derived from it. Since an abstract
class contains one or more functions
for which there is no definition, no
objects can be created using an
abstract class. However, you can
create pointers to an abstract class.
This allows an abstract class to be
used as a base class. A pointer to an
abstract class can be used to select
the proper virtual function.