1
Я знаю, что я могу сделать это:Вызов функции внутри станд :: all_of
vector<int> insidetest;
if(std::all_of(insidetest.begin(),insidetest.end(),[](int i){return i>100;}))
{
std::cout << "All greater" << std::endl;
}
, но я хочу, чтобы вызвать другую функцию (возможно, более сложный, чем просто> 1000). Как я могу вызвать другую функцию внутри станд :: all_of, например:
bool fun(const vector<int> *s)
{
return true;
}
Это не ясно, что вы хотите сделать. Параметры, переданные в 'std :: all_of', будут иметь тип' typename Container :: value_type' (в данном случае 'int'), поэтому использование функции, которая принимает' const vector * s', не имеет смысла. –
Yuushi
Вы имеете в виду вызов 'fun' внутри лямбды, переданный' std :: all_of'? –
Это моя ошибка. Я прочитал, что «подпись функции предиката должна быть эквивалентна следующему: bool pred (const Type & a)», поэтому в моем случае я думал, что это const vector *. Теперь я понимаю, как это работает –