Por que "! =" É usado com iteradores em vez de "<"?
Estou acostumado a escrever loops assim:
for (std::size_t index = 0; index < foo.size(); index++)
{
// Do stuff with foo[index].
}
Mas quando vejo loops de iterador no código de outras pessoas, eles ficam assim:
for (Foo::Iterator iterator = foo.begin(); iterator != foo.end(); iterator++)
{
// Do stuff with *Iterator.
}
Encontro oiterator != foo.end()
estar offputting. Também pode ser perigoso seiterator
é incrementado em mais de u
Parece mais "correto" usariterator < foo.end()
, mas nunca vejo isso em código real. Por que não