#include #include // to{upper,lower}() #include // transform() using namespace std; namespace format { string format_hello (const string& g, const string& n, volume v) { string r (g); transform (r.begin (), r.end (), r.begin (), [v] (char c) -> char { switch (v) { case volume::quiet: return tolower (c); case volume::normal: break; case volume::loud: return toupper (c); } return c; }); return r += ", " + n + '!'; } }