fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. // 再帰終端用のダミー関数。
  5. void f(){}
  6.  
  7. template<typename ... ReturnTypes,typename ... ParamterTypes>
  8. void f( int(&t)(ParamterTypes...), ReturnTypes(&...rest)(ParamterTypes ...)){
  9. // とりあえずtを呼び出してみる
  10. t(ParamterTypes()...);
  11.  
  12. // 再帰
  13. f(rest...);
  14. }
  15.  
  16.  
  17. int g1(char c, long l){
  18. std::cout << "call g1()" << std::endl;
  19. return 0;
  20. }
  21. int g2( char c, long l ){
  22. std::cout << "call g2()" << std::endl;
  23. return 0;
  24. }
  25.  
  26.  
  27. int main() {
  28. f(g1,g2);
  29. return 0;
  30. }
Success #stdin #stdout 0s 3296KB
stdin
Standard input is empty
stdout
call g1()
call g2()