Image

Imagevina_peccatura wrote in Imageru_cpp Деловое

Listens: "Mission Impossible" - Theme

Category:

К вопросу о STL

В comp.lang.c++.moderated идёт серьёзное обсуждение различных аспектов стандартной библиотеки. Например, обсуждается корректность модели итераторов, которые, в отличие от индексов, имеют непосредственный доступ к элементам контейнера.

Другими словами:

int * array = new int[ 10 ];
for( int i = 0; i < 10; ++i )
{
array[ i ] = doSmth( [...] );
}

Здесь мы изменяем i независимо от array - это раз. Два, ( *i ) - не даёт возможности модифицировать объект. И три, даже если, положим, массив куда-то переместился, то индекс не стал от этого фиктивным.

Понятное дело, что пример условный. На самом деле можно написать нормальный контейнер с индексами (и они уже имеются - ссылки в том же обсуждении).

А что Вы думаете по этому и другим, затронутым в треде, вопросах?

Update: Тема, заявленная Мейерсом, такая: "Loops vs Algorithms"