¿Por qué no sobrecargar el operador + = () para std :: vector?
Empecé a aprender C ++, por lo que no sé por mi falta de conocimiento / experiencia por qué algo tan simple para un novato como lo que estoy a punto de describir no está ya en el STL. Para agregar un vector a otro vector, debe escribir esto:
v1.insert(v1.end(), v2.begin(), v2.end());
Me pregunto si en el mundo real las personas simplemente sobrecargan el operador + = para que esto sea menos detallado, por ejemplo, para el efecto de
template <typename T>
void operator+=(std::vector<T> &v1, const std::vector<T> &v2) {
v1.insert(v1.end(), v2.begin(), v2.end());
}
so entonces puedes
v1 += v2;
También tengo esto configurado para push_back a "+ =" un único elemento hasta el final. ¿Hay alguna razón por la que estas cosas no se deben hacer o se eviten específicamente por personas que dominan C ++?