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(Rectangle x, Rectangle y) { double a = x.Area(); double b = y.Area(); if (a < b) // etc // ... } int Compare(Circle x, Circle y) int Compare(Triangle x, Triangle y) int Compare(Circle x, Triangle y) int Compare(Triangle x, Circle y) int Compare(Circle x, Rectangle y) int Compare(Rectangle x, Circle y) int Compare(Rectangle x, Triangle y) int Compare(Triangle x, Rectangle y) int Compare(Two_D_Object x, Two_D_Object y) { double a = x.Area(); double b = y.Area(); if (a < b) // etc // ... }