Самый простой способ информировать логическое возвратное значение функции, передаваемой в STD :: BindC++

Программы на C++. Форум разработчиков
Anonymous
Самый простой способ информировать логическое возвратное значение функции, передаваемой в STD :: Bind

Сообщение Anonymous »

Допустим, у меня есть следующий код: < /p>

Код: Выделить всё

bool IsTheMagicNumber(int number, int magic_number)
{
return number == magic_number;
}

using NumberValidator = std::function;
NumberValidator check_is_magic = std::bind(IsTheMagicNumber, std::placeholders::_1, 42);

std::cout 
Похоже, что по какой -то причине типы не могут быть выведены из подписи предиката, когда я пытаюсь использовать его. Тем не менее, даже указание типов в вызове, он не компилируется, потому что результат от std :: bind  не соответствует подписи numbervalidator , а вывод компилятора довольно сложный для меня:

не будет подходящего преобразования _bind_helper  :: type  (aka _bind  ) до numbervalidator  (aka function  ) 

, что я знаю, что это может быть что -то, что это может быть, или что -то в этом случае, если я не знаю, что это так, что это может быть, или что -то в этом случае, если я не знаю, чтобы это было в этом, или что -то в этом случае. возможно?  

Подробнее здесь: [url]https://stackoverflow.com/questions/79696215/easiest-way-to-invert-the-boolean-return-value-of-a-function-passed-to-stdbind[/url]

Вернуться в «C++»