нных обобщенных алгоритмов. Ес
Автор admin
Четверг, 4 июня 2009 11:32
нных обобщенных алгоритмов. Если эти алгоритмы будут соответствовать правилам, установленным для всех алгоритмов STL, с ними смогут легко работать программисты, знакомые с STL, и ваши алгоритмы станут своего рода расширением инструментария STL. 324 Глава 6 • Обобщенные алгоритмы Проще всего начать с заголовочного файла , найти что-нибудь похожее на то, что вам нужно, и построить свой код по готовому образцу1 (практически во всех реализациях STL код шаблонов определяется непосредственно в заголовочных файлах). Если внимательнее изучить список алгоритмов стандартной библиотеки С++, можно заметить очевидное упущение: в нем отсутствует алгоритм copy_if(). Хотя желаемого эффекта можно добиться при помощи алгоритма remove_copy_if(), это не так удобно, поскольку условие приходится инвертировать (вспомните: алгоритм remove_copy_if() копирует только те элементы, которые не соответствуют его предикату). Напрашивается очевидное решение — инвертировать предикат адаптером notl перед тем, как передавать его алгоритму remove_copy_if(): // Pred — исходное условие replace_copy_if(begin, end. notl(pred)); Вы
Комментарии закрыты.
Последние комментарии