帮忙解决个no matching function 的小错误
调用处:str.swap(string(str.c_str())); //str是一个stl::string
error: no matching function for call to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::swap(std::string)'
/usr/include/c++/4.0.2/bits/basic_string.tcc:500: note: candidates are: void std::basic_string<_CharT, _Traits, _Alloc>::swap(std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>]
上述代码在windows下编译运行没有任何问题,但是在Suse下就不行了,报上面那个错误。
不知道是什么原因?怎么解决?