Re[5]: Проблемы STL-контейнеров
От: Kluev  
Дата: 07.09.06 09:11
Оценка: -1
Здравствуйте, kan, Вы писали:

kan>Kluev wrote:


>> for(i = 0, j = vec.size()-1; i < j; i++)


>> Со знаковыми типами вот такой код будет нормально работать, а с

>> бесзнаковыми i,j при vec.size()==0 будут грабли.
kan>А зачем такой ужас писать? Чем банальный

kan>for(size_t i = 0; i + 1 < vec.size(); i++)

kan>не устраивает?

Такая форма записи неестественная и не соотвествует ходу мышления.

>> R>зачем в вашем примере GetPos возвращает int? судя по всему только для

>> возможности задать спец значение -1, на мой взгляд в таком случае более
>> правильно использовать явно объявленое значение для беззнакового — как
>> например std::string::npos.
>>
>> Для того чтобы можно было писать по человечески. Если например двигаемся
>> в произвольном направлении и с произвольным шагом, то к индексу
kan>Для этого есть iterator.

С итераторами неудобно работать.
1) они становятся невалидными после ресайза
2) программу неудобно отлаживать, т.к. итератор ничего не говорит ни о номере итерации, ни о индексе элемента в массиве.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.