所以我尝试 std::replace(diff_path.begin(), diff_path.end(), "\\", "/");
但它似乎无法在我的 Visual Studio 上编译.怎么办 - 如何将字符串中的所有 \
转换为 /
?
Error 3 error C2446: '==' : no conversion from 'const char *' to 'int' c:\program files (x86)\microsoft visual studio 10.0\vc\include\algorithm 1311 1 CloudServerPrototype
Error 5 error C2440: '=' : cannot convert from 'const char [2]' to 'char' c:\program files (x86)\microsoft visual studio 10.0\vc\include\algorithm 1312 1 CloudServerPrototype
Error 4 error C2040: '==' : 'int' differs in levels of indirection from 'const char [2]' c:\program files (x86)\microsoft visual studio 10.0\vc\include\algorithm 1311 1 CloudServerPrototype
您需要使用字 rune 字,而不是字符串文字:
std::replace(diff_path.begin(), diff_path.end(), '\\', '/');
^~~~ ^~~
std::string
的value_type
是char
(字符串中的每个元素都是一个字符)。
我是一名优秀的程序员,十分优秀!