fork download
  1. #include <cstdlib>
  2. #include <cstdio>
  3.  
  4. template <size_t... s>
  5. struct vector
  6. {
  7. static void print()
  8. {
  9. printf("%lu %lu %lu %lu\n", s...);
  10. // ^ don't do this in real code :)
  11. }
  12. };
  13.  
  14. template <typename T, size_t e>
  15. struct push_front;
  16.  
  17. template <size_t e, size_t... s>
  18. struct push_front<vector<s...>, e>
  19. {
  20. typedef vector<e, s...> type;
  21. };
  22.  
  23. int main()
  24. {
  25. push_front<vector<1, 2, 3>, 5>::type::print();
  26. }
  27.  
Success #stdin #stdout 0s 2828KB
stdin
Standard input is empty
stdout
5 1 2 3