Udostępnij za pośrednictwem


list::unique (STL/CLR)

Usuwa elementy sąsiadujące, które przechodzą określony test.

    void unique();
    template<typename Pred2>
        void unique(Pred2 pred);

Parametry

  • pred
    Moduł porównujący dla elementu par.

Uwagi

Pierwsza funkcja Członkowskie usuwa z kontrolowanej sekwencji (wymazywanie) każdy element, który porównuje równa się jego poprzedni element--Jeśli element X poprzedza element Y i X == Y, usuwa element członkowski funkcja Y.Umożliwia ona usunąć wszystkich, poza jedną kopię każdego podsekwencja sąsiadujących elementów tego porównywania równości.Należy zauważyć, że jeśli kontrolowanej sekwencji porządkowania, takie jak przez wywołanie list::sort (STL/CLR)(), funkcji członka pozostawia tylko elementy z unikatowych wartości. (Stąd nazwa).

Funkcję drugiego członka działa tak samo, jako pierwszy, z tym wyjątkiem, że usuwa każdy element Y następującego elementu X dla którego pred(X, Y).Umożliwia ona usunąć wszystkich, poza jedną kopię każdego podsekwencja sąsiadujące elementy, które spełniają predykat funkcji lub pełnomocnika, który określisz.Należy zauważyć, że jeśli kontrolowanej sekwencji porządkowania, takie jak przez wywołanie sort(pred), funkcji członka pozostawia tylko te elementy, które nie mają zamawianie równoważne z innymi elementami.

Przykład

// cliext_list_unique.cpp 
// compile with: /clr 
#include <cliext/list> 
 
int main() 
    { 
    cliext::list<wchar_t> c1; 
    c1.push_back(L'a'); 
    c1.push_back(L'a'); 
    c1.push_back(L'b'); 
    c1.push_back(L'c'); 
 
// display initial contents " a a b c" 
    for each (wchar_t elem in c1) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// display contents after unique 
    cliext::list<wchar_t> c2(c1); 
    c2.unique(); 
    for each (wchar_t elem in c2) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// display contents after unique(not_equal_to) 
    c2 = c1; 
    c2.unique(cliext::not_equal_to<wchar_t>()); 
    for each (wchar_t elem in c2) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
    return (0); 
    } 
 
  

Wymagania

Nagłówek:<cliext/list>

Przestrzeń nazw: cliext

Zobacz też

Informacje

list (STL/CLR)

list::remove (STL/CLR)

list::remove_if (STL/CLR)

list::sort (STL/CLR)