sirve que push_back para c++ algorithm vector stl vectormath

push_back c++ para que sirve



Algoritmo STL para Vector Add (1)

Lo que desea hacer se puede lograr usando std::transform . En tu caso:

std::transform(foo.begin(), foo.end(), bar.begin(), foo.begin(), std::plus<int>());

std::transform es compatible con lambdas, por lo que puedes realizar operaciones más complicadas entre los elementos del vector .

Digamos que tengo dos vector<int> s:

vector<int> foo{1, 2, 3}; vector<int> bar{10, 20, 30};

Ahora quiero hacer un vector agregar sobre ellos de modo que el resultado sería:

11
22
33

¿Hay algún algoritmo de STL que maneje esto, o necesito usar un ciclo for :

for(auto i = 0; i < foo.size(); ++i){ foo[i] += bar[i]; }

Pregunta de bonificación, ¿qué pasa si quiero hacer algo más complicado que agregar, decir que foo era un vector<string> y la bar seguía siendo un vector<int> . Espero que, si hay un algoritmo STL que puedo usar, ¿también podría ser compatible con lambdas?