devxlogo

STL Iterators are not Necessarily Pointers

STL Iterators are not Necessarily Pointers

Most implementations of STL (Standard Template Library) use pointers as the underlying representation of iterators. However, an iterator doesn’t have to be a pointer, and there’s a good reason for that. Consider a huge vector of scanned images stored on a 6-Gigabyte disk. A built-in pointer on most machines has only 32 bits, which wouldn’t be large enough to iterate through such a large vector. Instead, the implementer can use a 64-bit integer as the underlying iterator in this case.

devx-admin

Share the Post: