ев. 364 Глава 7 • Обобщенные
Автор admin Понедельник, 8 июня 2009 11:32
ев. 364 Глава 7 • Обобщенные контейнеры и умеют переставлять элементы без копирования. С другой стороны, обобщенный алгоритм swap() ничего не знает об особенностях list, поэтому он меняет два элемента местами через присваивание. В общем случае вместо обобщенных алгоритмов рекомендуется задействовать эквивалентную функцию класса (если она существует). В частности, обобщенные алгоритмы sort() и reverse() следует использовать только с массивами, векторами и деками. Если вы работаете с большими сложными объектами, попробуйте начать со списка, особенно если операции конструирования, уничтожения, конструирования копий и присваивания обходятся достаточно дорого, а вы собираетесь часто сортировать объекты или иным образом изменять порядок их следования. Специальные операции со списками Контейнер list содержит специальные функции, которые с максимальной эффективностью используют особенности его структуры. Функции reverse() и sort() уже упоминались выше. Следующий пример демонстрирует еще несколько таких функций: //: С07:ListSpecialFunctions.срр //{L} Noisy #include
Комментарии закрыты.
Последние комментарии