void Print(string str)
{
cout << str << endl;
}
void Print2(string str,const char* pre)
{
cout << pre << str << endl;
}
int main()
{
//遍历vector
vector<string> vTmp;
vTmp.push_back("abc");
vTmp.push_back("123");
for(vector<string>::iterator it = vTmp.begin(); it != vTmp.end(); it++)
{
cout << *it << endl;
}
for(auto str : vTmp)
{
cout << str << endl;
}
for_each(vTmp.begin(),vTmp.end(),Print);
for_each(vTmp.begin(),vTmp.end(),[](string &str){ cout << str << endl; });
for_each(vTmp.begin(),vTmp.end(),[](string &str){ Print(str); });
for_each(vTmp.begin(), vTmp.end(), bind2nd(ptr_fun(Print2), "Element:"));//传参 functional
return 0;
}
map<int,string> ma;
for_each(ma.begin(),ma.end(),bind(Print,bind(map<int,string>::value_type::second,_1)));