So to use most standard library algorithms on self-made container classes I've seen that one must declare typedef for iterator traits. Now usually this is done within an Iterator class.
I've always assumed the standard library tries to access the namespace of the iterator by lets say... container::Iterator::iteratortrait
But I've now come across the fact that one can simply declare the traits in the container class, and not in the Iterator class.
How does the standard library differentiate between looking for the typedef in the Iterator class and looking for the typedef in the container class?
Thanks