title: C++: Unknown pointer size when forward declaring (error C2036)
body: <p>In a header file, I have forward declared two members of a namespace:</p>
  
  <pre><code>namespace Foo {
      struct Odp
      typedef std::vector&lt;Odp&gt; ODPVEC;
  };
  
  class Bar
  {
  public:
       Foo::ODPVEC baz; // C2036
  };
  </code></pre>
  
  <p>The error generated by the compiler is:</p>
  
  <pre><code>error C2036: 'Foo::Odp *': unknown size
  </code></pre>
  
  <p>I'm guessing this is an issue with forward declaring <code>Odp</code>. How can I get around this?</p>