[Rcpp-devel] How to efficiently remove some words from a big vector of strings.
contact AG STUDY
contact at ag-study.com
Sun Dec 22 14:46:00 CET 2013
I am trying to write an efficient c++ function to remove some words from a
big vector of strings.
Here my code using stl :
vector<std::string> stripWords(vector<std::string>& input,
std::set<std::string>& toRemove){
input.erase(
remove_if(input.begin(), input.end(),
[&toRemove](const std::string& x) -> bool {
return toRemove.find(x) != toRemove.end();
}),input.end());
}
But I get this warning about using lambda expression and this template
error.
warning: lambda expressions only available with -std=c++0x or -std=gnu++0x
[enabled by default]
error: no matching function for call to
'remove_if(std::vector<std::basic_string<char> >::iterator,
std::vector<std::basic_string<char> >::iterator,
stripWords(std::vector<std::basic_string<char> >&,
std::set<std::basic_string<char> >&)::<lambda(const string&)>)'
agstudy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/rcpp-devel/attachments/20131222/7e911c1a/attachment.html>
More information about the Rcpp-devel
mailing list