Возможный дубликат:
Зачем использовать итераторы вместо индексов массива?
string::iterator it;
for (it = str.begin(); it < str.end(); it++)
cout << *it;
cout << endl;
Почему бы и нет:
for (int i = 0; i < str.size(); i++)
cout << str[i];
cout << endl;
Кажется, что string:: iterator не предоставляет проверку диапазона. Почему мы должны использовать string::iterator
вместо индекса?
Спасибо.