en C ++, tengo dos list<T>
objetos A
y B
quiero agregar todos los miembros de B
al final de A
. He buscado en algunas fuentes diferentes y no he encontrado una solución simple (ei A.append(B);
) y esto me sorprende un poco.
¿Cuál es la mejor manera de hacer esto?
Da la casualidad de que B no me importa después de esto (se elimina en la siguiente línea), así que si hay una manera de aprovechar eso para un mejor rendimiento, también me interesa eso.
a.splice(a.end(), b)
ya.splice(a.end(), b, it_b_start)
, pero es O (n) paraa.splice(a.end(), b, it_b_start, it_b_end)
.un ejemplo usando boost
fuente