title: use stl map as member of struct
body: <p>I'm constructing a struct with one of the member being a map.<br>
  First question is this allowed? The compiler did not complain.  </p>
  
  <pre><code>struct A {  
    map&lt;int, float&gt; B;  
  }  
  </code></pre>
  
  <p>Later I declare an array of such data type.  </p>
  
  <pre><code>A *C = (A *)INTERNAL_CALLOC(..., sizeof(A));  
  </code></pre>
  
  <p>Here the function <code>INTERNAL_CALLOC</code> is a functional wrapper of MALLOC.<br>
  Later on in the code when I try to first time insert an item into the array's first element's map, I got a core dump.  </p>
  
  <pre><code>C[0].B[0] = 0.001;  
  </code></pre>
  
  <p>Any idea why is this the case?<br>
  Thanks!</p>