I'm currently reading through a C++ tutorial, and for the most part it's going great - but I am slightly confused about the purpose of 'interface classes', and abstract classes.
I don't understand why it is preferable to create a purely virtual base class, only to overwrite all of the methods in the derived ones. I suppose it creates a nice little framework for classes that inherit from it - but I am still quite lost as to the point of it all. Also I'm unsure why it's useful to have a base class pointer bound to a derived class. Could anyone help me to understand it please?
-Thanks in advance