passing std::string by reference