> -- Дмитрий Дагаев писал(а):
> Чем лучше? Я не говорил, что лучше, я говорил, что .Я исходил из этого сообщения:> -- Дмитрий Дагаев писал(а):
> "Смотрите, от чего я ради вас уклонился" - отсутствие дженериков и связанной с ними проблемной инфраструктуры.Слово "проблемной" натолкнуло меня на мысль, что это подразумевало, что предложенное решение лучше.

> -- Цитата:
> 1. operator[] имеет определенный overhead, т.к. это метод, и быстродействие доступа к элементам вектора хуже, чем доступ к элементам массива c++;Тогда понятно. Но это статический метод на уровне заголовочных файлов, что подразумевает возможность эффективного встраивания без паразитического кода. На моём опыте использования vector на высоких настройках оптимизации показывал скорость, идентичную работе с массивами.

> -- Цитата:
> 2. доступ к элементам vec.data[] - это доступ через указатель на массив с проверкой границ, что дает нам новой качествоУ C++ vector есть метод at() с проверками границ, что, конечно, хуже, чем если бы проверки работали при обращении через [], так как стимулирует работать без проверок, чем большинство и пользуется. Но, кстати, по методу at() подтверждаю серьёзную просадку производительности по сравнению с системами, в которых проверка границ на уровне языка и даже с Си с явной проверкой.