// clist.pri private: int currPos; // Subscript representing current position // (-1 if list is empty) int lastPos; // Subscript of last item in list // (-1 if list is empty) char data[LMAX_LENG]; // items in the list // CLASSINV: -1 <= lastPos < LMAX_LENG // && -1 <= currPos <= LMAX_LENG // ABSTRACTION MAP: the sequence of elements is data[0..lastPos], // and the cursor is currPos.