С помощью шаблонных параметров шаблона можно передать классу шаблонный класс без указания типов по его параметрам. Мне было интересно, есть ли способ перейти к шаблону шаблона шаблона шаблонной сигнатуры функции, чтобы иметь возможность специализировать, какой вариант функции следует считать вперед.
Чтобы быть ясным - я знаю, что не могу этого сделать:
template <class T>
void foo() { /*...*/ }
template <template <class...> class FooType>
struct Foo { /*...*/ };
int main() {
Foo<decltype(foo)> f;
}
Но каким-то образом я хотел бы получить шаблонную подпись функции до Foo
. Возможно ли это?