A horribly programmed iterator used on a hash table. Only useful if the data structure that it will be used on is designed around the concept of using the shiterator. A typical shiterator takes an integer in its first() method call. Thus defeating the purpose of an iterator.
Person 1: "Why am I getting a "No matching call" to iterate.first()?"
Person 2: "...first() takes an integer."
Person 1: "...the fuck?"
Person 2: "Yeah, I know, person 3 programmed a shiterator."
for(i = 0; i < table size; i++)
{
iterator.first(i);
while(!iterator.done())
{
std::cout << iterator.current();
}
}