Удержание функции
Допустим, у нас есть шаблон класса, подобный этому:
template<typename F>
class A
{
public:
template<typename... Args>
A(F f, Args... args)
{ /* Do something... */ }
};
И теперь я хочу использовать это как-то так:
A<int(int)> a(::close, 1);
Теперь вопрос: есть ли способ опустить<int(int)>
потому что компилятор может знать эту информацию для::close
? Нет необходимости сохранять «дизайн» шаблона.
Что касается конкретной задачи, мне нужно разработать шаблон класса. Объекты этого класса могут принимать функцию и параметры для этой функции во время создания и вызывать эту функцию позже.