I want to write a class that has a function (say Add) which
1. accepts pointer to ANY object and a number. This no. is ID of object which will be unique for each object.
2. Find's it's type
3. class should maintain number of std::lists. each list is supposed to store objects of a single class. Function CREATES a new object of same type as that of the received object. copies all attributes from original object and stores newly created object in appropriate list. If List doesn't exist, It should be created.
Class should have other function (say retrieve) which receives a no (ID) and returns reference to previously added object with same ID.