Homework/HW02/List.cc
List::List(const List &data)
    : head(NULL), tail(NULL), size(0) // start with an empty list
{
    *this = data; // then use the operator= form this class
}
// Copy constructor. The target object should be assigned a hard copy
// of the list contained in the data object.
Copy constructor. The target object should be assigned a hard copy
of the list contained in the data object.
Copy constructor . The target object should be assigned a hard copy of the list contained in the data object .
List::List(const List &data)
    : head(NULL), tail(NULL), size(0) 
{
    *this = data; 
}
List :: List ( const List & data ) : head ( NULL ) , tail ( NULL ) , size ( 0 ) { * this = data ; }
Copy constructor.
Copy constructor .
// start with an empty list // then use the operator= form this class