GeometricObject glist[10000]; // will this work? // load up array slots with data for (int i = 0; i < 10000; i++) { } // draw all of the shapes for (int i = 0; i < 10000; i++) gList[i].Draw(); ---------------------------------------------------- int Compare(Two_D_Object x, Two_D_Object y) { double a = x.Area(); double b = y.Area(); if (a < b) // etc // ... }