list::unique (STL/CLR)
Remove os elementos adjacentes que passam um teste especificado.
void unique();
template<typename Pred2>
void unique(Pred2 pred);
Parâmetros
- pred
Comparador para pares do elemento.
Comentários
A primeira função de membro remove da sequência controlada () erases cada elemento que compara o igual a seu elemento acima -- se o elemento X precede o elemento Y e X == Y, a função de membro remove Y. Use-a para remover todas menos uma cópia de cada subsequência de elementos adjacentes que comparam iguais. Observe que se a sequência controlada está ordenada, como chamar list::sort (STL/CLR)(), a função de membro apenas deixa os elementos com os valores exclusivos. (Como o nome).
A segunda função de membro se comportará da mesma forma que os primeiros, exceto que remove cada elemento Y que segue um elemento X para que pred(X, Y). Você usará para remover todas menos uma cópia de cada subsequência de elementos adjacentes que satisfazem a uma função de predicado ou delega-o que você especifica. Observe que se a sequência controlada está ordenada, como chamar sort(pred), a função de membro apenas deixa os elementos que não têm o equivalente que regras com nenhum outro elemento.
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
cliext </lista deCabeçalho: >
cliext deNamespace: