记录一个错误
// error: no matching function for call to ‘swap(const char&, const char&)’
// swap(*__a, *__b);
之前参数写了 const std::string &str
不能写 因为 reverse 是要 变化的
碰到swap(const char&, const char&)'的错误 也许可以看看 是不是把参数定义成const 了。 不过这只是一个可能
错误的代码
//因为这里写了 const ,不能写 因为 reverse 是要 变化的
std::string StringUtils::reverse( const std::string &str) {
// error: no matching function for call to 'swap(const char&, const char&)'
// swap(*__a, *__b);
std::reverse(str.begin(), str.end());
return str;
}
正确的代码
//因为这里写了 const ,不能写 因为 reverse 是要 变化的
std::string StringUtils::reverse( std::string str) {
// error: no matching function for call to 'swap(const char&, const char&)'
// swap(*__a, *__b);
std::reverse(str.begin(), str.end());
return str;
}