I need help in creating an abstract class hierarchy.
The root (base class) is an abstract class Collection which has 3 concrete descendants: Set, List and Queue. All three subclasses should be implemented using a linked list with 2 pointers front, and back, and an additional data member count giving the number of elements in a collection. For that, I will need a nested class Collection::Node (for simplicity, assume that the type of the infoelement in a given node is int, although in reality, when designing a library, I should use templates).
I need to write the definition of the classes hierarchy (provide whatever I can see fit to declare, along with appropriate argument signature).
Also I want to Implement the member function insert as I see it to be most appropriate in each class... (If needed I can also “utilize” some other member functions, but I have to state clearly my assumption...)
how are these descendants (Set, List, Queue) different from each other? Each of these terms has a specific meaning in the standard library but as these are your custom classes how are you proposing to differentiate them? And what are the minimum common characteristics of these classes that can be sent back up to the ABC. See here for an example of ABC and then have a think and give us some more info https://en.wikibooks.org/wiki/C%2B%2B_Programming/Classes/Abstract_Classes