title: Pointer to array of base class, populate with derived class
body: <p>If I have a base class, with only virtual methods and 2 derived classes from
  the base class, with those virtual methods implemented.</p>
  
  <p>How do I:</p>
  
  <pre><code> // causes C2259
   BaseClass* base = new BaseClass[2];
  
   BaseClass[0] = new FirstDerivedClass;
   BaseClass[1] = new SecondDerivedClass;
  </code></pre>
  
  <p>or:</p>
  
  <pre><code>// causes "base is being used without being initialized"
  BaseClass* base;
  // causes CC59 again
  BaseClass* base = new BaseClass;
  
  base[0] = FirstDerivedClass();
  base[1] = SecondDerivedClass();
  </code></pre>
  
  <p>(or something similar)</p>
  
  <p>...so that I can access the <code>BaseClass</code>s methods through the <code>DerivedClass</code>,
  but by pointer and the pointer is an array of <code>DerivedClass</code>s?</p>