if (myVector.end() - it < variable_amount) it += variable_amount; else break;
std::advance would allow this to work with non-random access iterators, but that would be an inefficient algorithm for them, so I recommend not using them.
Algorithm for non-random-access iterators:
for (; variable_amount-- && it != myList.end(); ++it);
CLICK HERE to find out more related problems solutions.