1) uint = unsigned int, фактически uint - это просто typedef для unsigned int (будет заменено unsigned int во время компиляции).
2) Если вы хотите добавить в свой код некоторую «безопасность», связанную с uint, вы наверняка избежите отрицательных значений.
3) Если вы пробегаете вектор последовательно, переходите к итераторам, они оптимизированы для последовательного зацикливания (они являются своего рода указателями).