title: Create and initialise an array of vectors in one go
body: <p>To create an array of strings this works:</p>
  
  <pre><code>std::string array[] = {
      "first",
      "second",
      :
      "last"
  };
  </code></pre>
  
  <p>If I try to do the same with vectors it doesn't work:</p>
  
  <pre><code>std::vector&lt;int&gt; array[] = {
      {1, 2},
      {3, 4, 5}
      :
      {9}
  };
  </code></pre>
  
  <p>I get "non-aggregates cannot be initialized with initializer list".</p>
  
  <p>What is the correct syntax to initialise the array of vectors?</p>
  
  <p>Note that I need to do it in one go like this and not using vector member functions to fill the vectors with <code>int</code>s one at a time (because I'm trying to set up a file that will create the array at compile time based upon the initialisation numbers, so calling member functions doesn't help in this case).</p>