Try changing this line
Code:
if(title[start] == ' ')
to
Code:
if ( title.empty() )
and use this getTitle instead
Code:
const string& Book::getTitle(string title)
{
    size_t title_start;

    title_start = title.find("Title:");

    if ( title_start == title.npos  )
       return "";
    title = title.substr(title_start);
    return title;
}
as I am pretty sure std::getline() discards the delimiting character.