Why do you have multiple constructors.
To allow options in constructing the object.

Also, I don't know what the "&" does when used after a string.
Read up on C++ references. In this context, it is used to pass by (const) reference.