We know that objects of Abstract class can't be created and functions
of abstract class have to be overriden by the child class, so this
makes me think as to what is the use of having a abstract class in
programming?
The classes are using to declare interface. From C language point of
view, class is similar to module, so must have interface, with the help
of which all other parts of program call the module implementation.
Interface can have no code, as Abstract class do.
Unlike to single C module, C++ program can have many modules with the
same interface of the Abstract class, having equal or different
implementation, and able to be changed at runtime without relink.
For example, Abstract class can describe interface of video system, and
concrete implementation of the interface can be selected at runtime by
correct derived class.
C++ program can have many different Abstract classes.
See abstract data types for C language details.
To learn desing of classes see here:
http://groups.google.com/group/comp...d7d6535/106fd67b957cf34b#doc_848d7705920c8533
and next message