Compartir a través de


forward_list::merge

Combina dos secuencias ordenadas en una sola secuencia ordenada en tiempo lineal.quita los elementos de la lista de argumentos, y los inserta en este forward_list.Las dos listas se deben ordenar por igual comparan el objeto function antes de la llamada a merge.La lista combinada se ordena por ese compara el objeto function.

void merge(forward_list& _Right);
template<class Predicate>
    void merge(forward_list& _Right, Predicate _Comp);

Parámetros

Parámetro

Descripción

_Right

La lista adelantada a la combinación de.

_Comp

El objeto de la función de comparación que se utiliza para ordenar elementos.

Comentarios

forward_list::merge quita elementos de forward_list_Right, y los inserta en este forward_list.Las dos secuencias se deben ordenar por el mismo predicado, se describe más adelante.La secuencia combinada también está ordenada por ese compara el objeto function.

Para los iteradores Pi y Pj que señalan elementos en las posiciones i y j, la primera función miembro impone el orden !(*Pj < *Pi) siempre que i < j.(Los elementos se clasifican por orden de ascending .) La segunda función miembro impone el orden !_Comp(*Pj, *Pi) siempre que i < j.

No se invierte los pares de elementos de la secuencia controlada original en la secuencia controlada resultante.Si un par de elementos de la secuencia controlada resultante es igual (!(*Pi < *Pj) && !(*Pj < *Pi)), un elemento de la secuencia controlada original aparece antes de un elemento de la secuencia controlada por _Right.

Una excepción sólo aparece si _Comp produce una excepción.En ese caso, la secuencia controlada se permite en un orden no especificado y la excepción se reinician.

Requisitos

encabezado: <forward_list>

espacio de nombres: std

Vea también

Referencia

forward_list Class