Re[29]: Они сделали дерьмо опять
От: Kluev  
Дата: 24.06.20 11:15
Оценка: :)
Здравствуйте, so5team, Вы писали:

S>Здравствуйте, T4r4sB, Вы писали:


S>>>Но это не так. И авторы STL не единственные люди, которые считают, что размеры и индексы должны быть беззнаковыми.


TB>>Вообще-то они уже признали, что это была ошибка.


S>Если под "они" подразумеваются авторы STL, то где об этом можно прочитать?


S>А вообще речь шла о том, что кроме авторов STL есть разработчики, которые находят логичным использование беззнаковых чисел для размеров и индексов. Т.е. авторы STL вовсе не были "белыми воронами".


За этим "логичным" решением стоит целый лес граблей, ладно когда его не видит обычный разработчик, но когда "близорукость" у создателей стандарт пиши пропало.

Вот один из примеров. Допустим нужно перебрать все элементы кроме первого и последнего:

    for (int i = 1; i < v.signed_size() - 1; i++)
    {
        v[i];
    }

    for (size_t i = 1; i < v.unsigned_size() - 1; i++)
    {
        v[i];
    }


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