fork download
  1. #include<iostream>
  2. using namespace std;
  3.  
  4. int main (int argc, char** argv)
  5. {
  6. // using cout instead of file for demo
  7. #define funcN cout
  8. for(size_t i = 0, N = 10; i < N; ++i)
  9. {
  10. funcN << "#define FUNC_" << i << "(R";
  11. for(size_t j = 1; j <= i; ++j)
  12. funcN << ", _" << j;
  13. funcN << ", ...) ";
  14.  
  15. funcN << "F(R";
  16. for(size_t j = 1; j <= i; ++j)
  17. funcN << ", _" << j;
  18. funcN <<")\n";
  19. }
  20. funcN << endl;
  21. }
  22.  
Success #stdin #stdout 0s 3456KB
stdin
Standard input is empty
stdout
#define FUNC_0(R, ...) F(R)
#define FUNC_1(R, _1, ...) F(R, _1)
#define FUNC_2(R, _1, _2, ...) F(R, _1, _2)
#define FUNC_3(R, _1, _2, _3, ...) F(R, _1, _2, _3)
#define FUNC_4(R, _1, _2, _3, _4, ...) F(R, _1, _2, _3, _4)
#define FUNC_5(R, _1, _2, _3, _4, _5, ...) F(R, _1, _2, _3, _4, _5)
#define FUNC_6(R, _1, _2, _3, _4, _5, _6, ...) F(R, _1, _2, _3, _4, _5, _6)
#define FUNC_7(R, _1, _2, _3, _4, _5, _6, _7, ...) F(R, _1, _2, _3, _4, _5, _6, _7)
#define FUNC_8(R, _1, _2, _3, _4, _5, _6, _7, _8, ...) F(R, _1, _2, _3, _4, _5, _6, _7, _8)
#define FUNC_9(R, _1, _2, _3, _4, _5, _6, _7, _8, _9, ...) F(R, _1, _2, _3, _4, _5, _6, _7, _8, _9)