###C++ Primer第5版 学习笔记
####第十章
下面说的算法都是本章的泛型算法
auto sumstring = accumulate(strvec.cbegin(), strvec.end(), "");
会尝试使用 const char* 的加运算符,导致编译错误auto f = [] { return 42; };
_n
时需using namespace std::placeholders
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <functional>
#include <iterator>
using namespace std;
using namespace std::placeholders;
bool f(const string &s, int i, vector<string> &r) {
if (s.length() == i) {
r.push_back(s);
return true;
}
return false;
}
int main()
{
vector<string> vs, r;
copy(istream_iterator<string>(cin), istream_iterator<string>(), back_inserter(vs));
cout << count_if(vs.begin(), vs.end(), bind(f, _1, 5, ref(r)));
copy(r.begin(), r.end(), ostream_iterator<string>(cout, " "));
cout << r.size();
}