fork download
  1. #include <vector>
  2. #include <type_traits>
  3. #include <cstdint>
  4.  
  5. template<class T, class... Args>
  6. auto vector_ptr(T&& size, Args&&... args);
  7.  
  8. template<class N>
  9. std::vector<int64_t> vector_ptr(N size)
  10. {
  11. return std::vector<int64_t>(size);
  12. }
  13.  
  14. template<class T, class... Args>
  15. auto vector_ptr(T&& size, Args&&... args)
  16. {
  17. return std::vector<decltype(vector_ptr(std::forward<Args>(args)...))>
  18. (std::forward<T>(size), vector_ptr(std::forward<Args>(args)...));
  19. }
  20.  
  21. int main()
  22. {
  23. auto v1 = vector_ptr(1);
  24. auto v4 = vector_ptr(2,3,4,5);
  25. // etc...
  26. return 0;
  27. }
  28.  
Success #stdin #stdout 0s 4260KB
stdin
Standard input is empty
stdout
Standard output is empty