У меня есть следующий код C ++:
template <class T1, class T2, class T3>
void MetaTypeHandler(T1 lambda1, T2 lambda2, T3 lambda3) {
lambda1(1);
lambda2('x');
lambda3(true);
}
int main() {
auto f = [] (auto x) {};
MetaTypeHandler(f,f,f);
}
Передача f
несколько раз ужасна.Можно ли написать MetaTypeHandler()
, чтобы f
передавался только 1 или 2 раза?Я думаю, что параметры шаблона шаблона могут помочь, но не могу обернуть их вокруг.