std :: function em vez de modelos para predicados
Muitos algoritmos de biblioteca padrão aceitam funções predicadas. No entanto, o tipo desses predicados é um parâmetro de modelo arbitrário fornecido pelo usuário. Por que o C ++ 11 não especifica que eles tenham um tipo específico, comostd::function
em vez de? Por exemplo:
template< class InputIt >
InputIt find_if( InputIt first, InputIt last,
std::function<bool()> p );
Não está usando isso em vez de um modelo como tipo de argumento não muito mais limpo?