Re[7]: Почему настоящие программисты избегают C++
От: d Bratik  
Дата: 17.02.05 13:42
Оценка: +2
Здравствуйте, Mr. None, Вы писали:

MN>Здравствуйте, d Bratik, Вы писали:


DB>>Да что такое сегодня с руками...


MN>Похоже, что не только сегодня...


DB>>Должно быть


DB>>
DB>>std::vector<int> v;
DB>>for (std::vector<int>::size_type i = v.size() - 1; i >= 0; --i)
DB>>{
DB>>  ...
DB>>}
DB>>


DB>>Этот код ошибочен при любом количестве элементов в векторе.


MN>Неправда — проверьте... при 0-ом размере вы не выполните ни одной итерации, потому что проверка условия выполняется перед каждой итерацией, в том числе и первой...


Вот так думает каждый здравомыслящий человек, но увы, переменная i не имеет знака, следовательно значение -1 для нее автоматически преобразуется в 4 млрд... и цикл продолжается.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.