First curious thing, why does diary.h include diary.h ?

First bad thing, meeting.h has using namespace std;
Putting "using" inside a header file forces the namespace onto anyone who includes the file. And if they didn't want all of the std namespace, there is no way out.
You should have std::string in the header fle, and no "using" statement.

First wrong thing.
if(clash = false)
What's the difference between = and == ?