Скажем, у меня есть два vector<int> s:
vector<int> foo{1, 2, 3};
vector<int> bar{10, 20, 30};
Теперь я хочу добавить на них вектор, чтобы результат был:
11
22
33
Есть ли алгоритм STL, который будет обрабатывать это, или мне нужно использовать цикл for:
for(auto i = 0; i < foo.size(); ++i){
    foo[i] += bar[i];
}
Бонусный вопрос, что делать, если я хотел сделать что-то более сложное, чем добавление, скажем, foo был vector<string> и bar по-прежнему был vector<int>. Я надеюсь, что если есть алгоритм STL, который я могу использовать, он также будет поддерживать lambdas?
