Предположим, что
typedef std::function<
double(
int,
long
)
> FooType;
и я хочу объявить прототипы функций для ряда функций, которые я могу сложить в std::function
этого типа. Я знаю, что могу написать
double foo1(int, long);
double foo2(int, long);
и т.д., но есть ли способ, каким образом я могу использовать FooType
при объявлении прототипов функций? Что-то вроде
FooType::type foo1, foo2;
Возможно, мне, возможно, придется использовать (*foo1)
или подобное? Естественно, в реализации функции мне нужно было бы написать ее длинную руку, чтобы я мог вставить некоторые параметры, но запись ее, как указано выше, сохранит мой файл заголовка чистым.