.
memory protection compared to const char *, it looks like it provides some lifetime and null safety but it does not, and the code will be materially worse if only because the single most useful thing you can do with a std::string is call c_str() on it (because no system APIs take a std::string) and