我有2个std :: string.我只是想,给定输入字符串:
为什么这样有效:
std::string s="hello";
std::string out;
std::transform(s.begin(), s.end(), std::back_inserter(out), std::toupper);
Run Code Online (Sandbox Code Playgroud)
但这不会(导致程序崩溃)?
std::string s="hello";
std::string out;
std::transform(s.begin(), s.end(), out.begin(), std::toupper);
Run Code Online (Sandbox Code Playgroud)
因为这有效(至少在相同的字符串上:
std::string s="hello";
std::string out;
std::transform(s.begin(), s.end(), s.begin(), std::toupper);
Run Code Online (Sandbox Code Playgroud)