List::Unique (STL/CLR)
Remove elementos adjacentes que passar um teste especificada.
void unique();
template<typename Pred2>
void unique(Pred2 pred);
Parâmetros
- Pred
Comparador para pares de elemento.
Comentários
A primeira função de membro remove seqüência controlada (apaga) de cada elemento compara igual ao seu elemento anterior - se elemento X precede o elemento Y e X == Y, a função de membro remove Y.É utilizado para remover todos os mas uma cópia de cada subsequence de elementos adjacentes que comparar igual.Observe que se a seqüência controlada é ordenados, como ao chamar List::Sort (STL/CLR)(), a função de membro deixa somente elementos com valores exclusivos.(Daí o nome).
A segunda função de membro se comporta da mesma primeiro, exceto que ele remove cada elemento Y um elemento a seguir X que pred(X, Y).Você pode usá-lo para remover apenas um cópia de cada subsequence de elementos adjacentes que satisfaçam a uma função de predicado ou representante que você especificar.Observe que se a seqüência controlada é ordenados, como ao chamar sort(pred), a função de membro deixa apenas os elementos que não têm equivalentes ordenação com outros elementos.
Exemplo
// 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);
}
Requisitos
Cabeçalho: < cliext/lista >
Namespace: cliext