CS-285 Lab 1

 

Date:            December 5, 2001

Due:            December 19, 2001

 

The purpose of the first lab is to develop a list container and make it work similarly to the list class that is contained in the C++ Standard Template Library (STL).  In order to do this, there are several requirements to be met:

 

The container (the list data structure) must be doubly linked and templated

A corresponding iterator must be implemented for the linked list class

The container must provide begin() and end() methods that return appropriate iterators

The iterator class must overload the ==, !=, ++, --, and * operators

The container implements the canonical methods (destructor, copy constructor, and =)

 

On my course webpage for CS-183, I’ve listed three different versions of a singly linked list program (one that does basic list operations, one that adds iterators to the basic program, and one that adds templates to the basic program).  Use these programs as a starting point to produce one program that “does it all” (i.e. it’s a templated container with a templated iterator class that implements the required operations).

 

In forming teams,  the students from my CS-183 class should each lead a two person eXtreme Programming team (XP) for the assignment.  The goal of the team should be to improve upon the implementation of the work, after the first student has fully explained the details of their implementation to the other team member.

 

Confused?!  Just ask questions during lab!