I have these classes: Boss, CommissionWorker, PieceWorker, HourlyWorker all directly derived from Employeer. I create a dynamic object (on heap) for each class: //////////////////////////////////////////////////////////////////// Boss* b = new Boss( "Whites", "Frank", 5, 7, 1971, 1, 9, 1994, 1300); CommissionWorker* c = new CommissionWorker("Reds", "Tom", 1, 2, 1980, 4, 5, 2001, 100, 1000, 2/100 ); PieceWorker* p = new PieceWorker( "Greens", "Bob", ...