История изменений
Исправление
kvpfs,
(текущая версия)
:
Ты не удосужился на осиливание базовых правил, при этом находишь возможным набрасывать кучи дерьма постоянно.
Но я по-прежнему не втыкаю, почему второй вариант в ТС с явным указанием f не работает, да ещё какую-то дикую сигнатуру function<R(P, PP)> выводит.
// правильно так
f(std::function([&](P) -> R { return R{}; }));
Во время поиска подходящего шаблона никакие приведения типов не допускаются, здесь всё строже. Потом все подходящие шаблоны + не шаблоны попадают в общий overload set и вызывается самый подходящий со всеми обычными кастами. Блин, букварь, первый класс.
Исходная версия
kvpfs,
:
Ты не удосужился на осиливание базовых правил, при этом находишь возможным набрасывать кучи дерьма постоянно.
Но я по-прежнему не втыкаю, почему второй вариант в ТС с явным указанием f не работает, да ещё какую-то дикую сигнатуру function<R(P, PP)> выводит.
// правильно так
f(std::function([&](P) -> R { return R{}; }));
Во время поиска подходящего шаблона никакие приведения типов не допускаются, здесь всё строже. Блин, букварь, первый класс.