title: Using namespace header file c++
body: <p>I'm trying to get a good structure in some code I'm writing but I'm not quite sure about header files. One of the problems I have is: I know I'm not supposed to include namespaces in header files but I don't know where else to put it.</p>
  
  <p>Consider this header:</p>
  
  <pre><code>// deck.h
  #pragma once
  #include &lt;vector&gt;
  #include "card.h"
  
  using namespace std;
  
  typedef vector&lt;card&gt; pile;
  
  class deck{
  public:
      deck();
      ~deck();
      void shuffle();
      card takeCard();
      int getSize();
  private:
      pile cDeck;
  };
  </code></pre>
  
  <p>The code in card.h is the definition of a card struct. Should the typedef even be in the header file? And ifso, how do I avoid using std::vector?</p>
  
  <p>Any tips would be appriciated.</p>