fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. template<typename T>
  5. void print_element(T&& t)
  6. {
  7. std::cout << "\t" << t << std::endl;
  8. }
  9.  
  10. template<typename F, typename ... T>
  11. void print_element(F&& f, T&&... t)
  12. {
  13. std::cout << "\t" << f << std::endl;
  14. print_element(std::forward<T>(t)...);
  15. }
  16.  
  17. template<typename ... T>
  18. void test_size(T&&... t)
  19. {
  20. std::cout << "Normal size " << sizeof...(t) << std::endl;
  21. std::cout << "Wrong size " << (int)(sizeof...(t) / sizeof(int)) << std::endl;
  22. print_element(std::forward<T>(t)...);
  23. }
  24.  
  25. int main()
  26. {
  27. test_size(1,2);
  28.  
  29. return 0;
  30. }
Success #stdin #stdout 0s 3340KB
stdin
Standard input is empty
stdout
Normal size 2
Wrong size 0
	1
	2