std :: function вместо шаблонов для предикатов
Многие стандартные библиотечные алгоритмы принимают предикатные функции. Однако тип этих предикатов является произвольным предоставленным пользователем параметром шаблона. Почему в C ++ 11 не указано, что они принимают определенный тип, напримерstd::function
вместо? Например:
template< class InputIt >
InputIt find_if( InputIt first, InputIt last,
std::function<bool()> p );
Разве это не использование вместо шаблона в качестве типа аргумента не намного более чистым?