fork download
  1. #include <initializer_list>
  2. #include <vector>
  3. #include <iostream>
  4.  
  5. template <typename T>
  6. std::vector<T> makeArray (std::initializer_list<size_t> dims) {
  7. size_t size = 1;
  8. for (size_t d : dims) size *= d;
  9. return std::vector<T> (size);
  10. }
  11.  
  12. int main () {
  13. std::vector<double> vec1 = makeArray<double> ({ 3, 5, 10});
  14. std::cout << vec1.size () << std::endl;
  15.  
  16. std::vector<int> vec2 = makeArray<int> ({ 3 });
  17. std::cout << vec2.size () << std::endl;
  18.  
  19. }
Success #stdin #stdout 0s 3472KB
stdin
Standard input is empty
stdout
150
3