Эффективная замена std::vector?

Рейтинг: 4Ответов: 1Опубликовано: 09.03.2011

Есть набор элементов, примерно 27 миллионов типа float. Необходимо, что бы все элементы хранились в памяти. Используется std::vector. С элементами из vector производятся различные операции. Доступ по индексу. Есть ли способ по-другому организовать хранение информации, поскольку вычислений с данными много, а обращение через vector.at медленное?

Ответы

▲ 10Принят

Используйте прямую индексацию через перегруженный оператор []. В методе vector::at есть проверки на корректность индекса - это может уменьшать производительность. Сам по себе std::vector достаточно быстр - не хуже по производительности обычного динамического массива.