/***********/ /* list.h */ /***********/ #include #define MAX_ELEM 100 class list { int nelem; POINT points[MAX_ELEM]; int n; public: list() { nelem = 0; n = 0; points[0].x=0; points[0].y=0; } ~list() { nelem = 0; } int add(POINT p) { if ( nelem < MAX_ELEM ) points[nelem++] = p; return nelem; } int add(int x, int y) { POINT p; p.x = x; p.y = y; return add(p); } POINT &last() { return points[max(nelem-1,0)]; } POINT &first() { n = 1; return points[0]; } POINT &next() { if ( end() ) return points[max(nelem-1,0)]; return points[n++]; } int end() { return ( n >= nelem ); } }; /* list */