title: Got invalid pointer when using boost::object_pool with vector
body: <p>I tried to use <code>boost::object_pool</code> to create an object which contains a vector as its member data. Here is the code.</p>
  
  <pre><code>#include &lt;iostream&gt;
  #include &lt;vector&gt;
  #include &lt;boost/pool/object_pool.hpp&gt;
  
  class A {
  public:
      std::vector&lt;int&gt; children;
  };
  
  int main() {
      boost::object_pool&lt;A&gt; p;
      A* a = p.malloc();
      std::cout &lt;&lt; a-&gt;children.size() &lt;&lt; std::endl;
  }
  </code></pre>
  
  <p>Here is the result.</p>
  
  <pre><code>free(): invalid pointer
  18446720595997429822
  </code></pre>
  
  <p>I was expecting the program to output <code>0</code>. However, as you can see, there was clearly something wrong here. The allocated pointer was not a valid pointer, why? What should I do to make it right?</p>