在 C++11 中,为什么是std::for_each(lst.begin(), lst.end(), some_lambda);
不一样std::transform(lst.begin(), lst.end(), lst.begin(), some_lambda);
?
第二个有效,第一个似乎什么也没做。我忽略了什么吗?
一个示例 lambda:
auto some_lambda = [=] (std::string s) -> std::string {
return "0" + s;
};
示例列表:
std::list<std::string> lst; lst.push_back("");