title: When vectors are allocated, do they use memory on the heap or the stack?
body: <p>Are all of the following statements true?</p>
  
  <pre><code>vector&lt;Type&gt; vect; //allocates vect on stack and each of the Type (using std::allocator) also will be on the stack
  
  vector&lt;Type&gt; *vect = new vector&lt;Type&gt;; //allocates vect on heap and each of the Type will be allocated on stack
  
  vector&lt;Type*&gt; vect; //vect will be on stack and Type* will be on heap. 
  </code></pre>
  
  <p>How is the memory allocated internally for <code>Type</code> in a <code>vector</code> or any other STL container?</p>