ения объектов при перераспреде
Автор admin Воскресенье, 7 июня 2009 11:32
ения объектов при перераспределении памяти. Дек также поддерживает индексацию элементов оператором [ ], но по скорости она уступает оператору [ ] вектора. Следовательно, если вы создаете все объекты в одной части программы, а затем организуете произвольный доступ к ним из другой части, в принципе можно попробовать заполнить дек, а затем создать вектор на базе дека и использовать его для быстрой индексации. Впрочем, не стоит прибегать к этому приему в повседневной работе — просто помните о такой возможности (преждевременные оптимизации вообще нежелательны). Однако у перераспределения памяти есть и другие более серьезные последствия. Поскольку вектор хранит свои объекты в удобном, компактном массиве, используемые им итераторы могут представлять собой простые указатели. И это хорошо — именно эта особенность обеспечивает векторам самую быструю выборку и обработку данных среди последовательных контейнеров. Но давайте посмотрим, что произойдет при добавлении одного дополнительного объекта, после которого вектор выделяет новую память и перемещает данные в другое место. Указатель итератора указывает «в никуда»!
Комментарии закрыты.
Последние комментарии