size_t index = std::distance( vector.begin(), it );
What it does behind the scenes is just it - v.begin()
(for random access iterators, such as vector's). Otherwise, it just increments first argument until it reaches the second (which isn't particularly efficient).