-->

使用擦除并删除从字符串中删除字符(Removing characters from a string

2019-10-19 09:21发布

我发现对堆栈溢出和其他论坛这个解决方案从一个字符串删除字符。 说我想从一个字符串我会做删除空格:

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返回的迭代器::删除功能不擦除方式工作,但显然它应该工作。 我该如何解决?

Answer 1:

你包括哪些头? 它看起来像只std::remove该编译器被看到的是一个在<cstdio> (可能包括通过<iostream>其他的iostream heaaders的或之一)。 如果包括<algorithm> ,你应该找到合适的人。



文章来源: Removing characters from a string using erase and remove