1. removing "static" (on the static member's definition in date.cpp) was the correct thing to do.

2. This is a completely different error. You forgot to implement "data::date(date &)" in data.cpp (although it is in date.h).