Iterando sobre elementos únicos de std :: multiset
Tudo que preciso é saber se algo existe e quantas vezes existe. Vou iterar sobre as coisas existentes e questionar quanto disso existe.
Minha implementação até agora usamultiset
Eu faço o seguinte:
std::multiset<thing> a;
auto previous = a.end();
for( auto each = a.begin(); each != a.end(); ++each ) {
if( previous == a.end() || *previous != *each ) {
a.count(*each);
}
previous = each;
}
EsclarecimentosEu tenho um vetor dething
s. Mas eles repetem o valor, às vezes, eu quero iterar mais de exclusivothing
s e para cada único fazer alguma coisa. Esse "algo" precisa saber a quantidade de tempo que issothing
aparece no vetor.
O código que eu postei acima é como estou resolvendo meu problema agora, não parece ser a maneira mais elegante de fazer o que eu quero.
Estou apenas seguindo as diretrizes do Stackoverflow: eu digo qual é o meu problema, e conto a minha solução (tentada).
Se uma sentença com um ponto de interrogação é realmente necessária, lá vai: Existe uma maneira de iterar elementos únicos sobre ummultiset
?