1
我在Stack Overflow和其他論壇上找到了用於從字符串中刪除字符的解決方案。說我想從一個字符串中刪除空格我會做:使用擦除和刪除從字符串中刪除字符
currentLine.erase(std::remove(currentLine.begin(), currentLine.end(), ' '), currentLine.end());
其中currentLine是字符串的名稱。
這樣的事情出現爲人們的工作,但如果我用它我得到:
/local/yrq12edu/Desktop/Bens_C++_Utilities/simuPOPtoFASTA/simuPOP2FASTA.cpp|54|error: cannot convert 'std::basic_string<char>::iterator {aka __gnu_cxx::__normal_iterator<char*, std::basic_string<char> >}' to 'const char*' for argument '1' to 'int remove(const char*)'|
由於編譯錯誤。 我認爲這是由std :: remove函數返回的迭代器不能使用擦除方法,但顯然它應該工作。我該如何解決?
請問您可以顯示currentLine的聲明。 – Borgleader
發佈一個簡短的測試用例。 – juanchopanza