In the cpp files, you write "using namespace std;", but it's inappropriate to do that in the headers: there you need to fully-qualify everything, std::vector, etc.