Sdílet prostřednictvím


forward_list::merge

Kombinuje dvě sekvence tříděny do jediného seřazené posloupnosti v lineární čas.Odebere ze seznamu argumentů prvků a vloží je do tohoto forward_list.Dva seznamy by seřazeny podle stejného objektu funkce compare před volání merge.Sloučeného seznamu budou seřazeny podle s porovnáním funkcí objektu.

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

Parametry

Parametr

Description

_Right

Seznam vpřed ze sloučení.

_Comp

Porovnání funkce objektu, který slouží k třídění prvků.

Poznámky

forward_list::mergeOdebere prvky z forward_list_Right, a vloží je do tohoto forward_list.Obě sekvence musí být objednána podle stejného predikátu popsané níže.Kombinované sekvence je také objednané daný objekt funkce porovnat.

Pro u iterátorů Pi a Pj prvky v místech určení i a j, první členské funkce ukládá pořadí !(*Pj < *Pi) při i < j.(Prvky jsou seřazeny v ascending objednávky.) Druhý členské funkce ukládá pořadí !_Comp(*Pj, *Pi) při i < j.

Žádná dvojice prvků v původní posloupnost řízené stornují výsledné řízené posloupnosti.Dvojice prvků ve výsledné řídit pořadí porovná rovná (!(*Pi < *Pj) && !(*Pj < *Pi)), prvek z původní řízené sekvence se zobrazí před prvek z řady řízena _Right.

Pouze pokud dojde k výjimce _Comp vyvolá výjimku.V takovém případě řízené sekvence je ponechán v nespecifikované pořadí a je výjimka rethrown.

Požadavky

Záhlaví: <forward_list>

Obor názvů: std

Viz také

Referenční dokumentace

forward_list Class