title: Including "vector.h" or "vector" causes warnings or errors
body: <p>If I put <code>#include &lt;vector.h&gt;</code> in my source file, I get this warning:</p>
  
  <pre><code>make -f Makefile CFG=Debug 
  g++ -c    -g -o "Debug/mynn.o"  "mynn.cpp"
  In file included from C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/backward/vector.h:59,
                   from mynn.h:7,
                   from mynn.cpp:1:
  **C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the &lt;X&gt; header for the &lt;X.h&gt; header for C++ includes, or &lt;iostream&gt; instead of the deprecated header &lt;iostream.h&gt;. To disable this warning use -Wno-deprecated.**
  g++  -g -o "Debug/mynn.exe" Debug/mynn.o   
  </code></pre>
  
  <p>and if I just add regular <code>#include &lt;vector&gt;</code> (without .h, like the warning suggests), I get the following errors:</p>
  
  <pre><code>make -f Makefile CFG=Debug 
  g++ -c    -g -o "Debug/mynn.o"  "mynn.cpp"
  In file included from mynn.cpp:1:
  **mynn.h:12: error: ISO C++ forbids declaration of `vector' with no type
  mynn.h:12: error: expected `;' before '&lt;' token
  mynn.h:13: error: `vector' has not been declared
  mynn.h:13: error: expected `,' or `...' before '&lt;' token
  mynn.h:13: error: ISO C++ forbids declaration of `parameter' with no type
  mynn.h:20: error: ISO C++ forbids declaration of `vector' with no type
  mynn.h:20: error: expected `;' before '&lt;' token
  mynn.h:21: error: ISO C++ forbids declaration of `vector' with no type
  mynn.h:21: error: expected `;' before '&lt;' token**
  </code></pre>
  
  <p>Is there a better way to include the vector header this so that it doesn't complain? Here's the source file that generates the warnings/errors:</p>
  
  <pre><code>// mynn.h
  #ifndef _MYNN_H_
  #define _MYNN_H_
  
  #include &lt;stdio.h&gt;
  #include &lt;iostream&gt;
  #include &lt;math.h&gt;
  #include &lt;vector&gt;
  
  class neuron {
  public:
      neuron();
      vector&lt;int&gt; weights;
      int compute_sum (vector &lt;int&gt; &amp;input);
  };
  
  class layer
  {
  public:
      layer();
      vector &lt;neuron&gt; nrns;
      vector&lt;int&gt; compute_layer (vector &lt;int&gt; &amp;input);
  };
  
  #endif /*_MYNN_H_*/
  </code></pre>