title: '[Class name]' does not name a type in C++
body: <p>I am programming a graph using a list of lists. For that, I have two classes, and each one of this classes has a pointer to another object of the same class and a pointer to the object of the second class. Here is the code:</p>
  
  <p><em>File V.h:</em></p>
  
  <pre><code>#ifndef VERTICEPUNT_H
  #define VERTICEPUNT_H
  
  #include "A.cpp"
  
  typedef char E;
  
   class V
  {
      public:
      E etiqueta;
      V* siguiente;
      A* primera;  //&lt;- Error: 'A' does not name a type
  
      V();
      ~V();
  };
  
  #endif // VERTICEPUNT_H
  </code></pre>
  
  <p><em>File V.cpp:</em></p>
  
  <pre><code>#include "V.h"
  
   V::V()
  {
       etiqueta = ' ';
       siguiente = 0;
       primera = 0;  //&lt;- Error: 'primera' was not declared in this scope
  }
  
   V::~V()
  {
      delete primera;
      delete siguiente;
  }
  </code></pre>
  
  <p><em>File A.h:</em></p>
  
  <pre><code>#ifndef ARISTAPUNT_H
  #define ARISTAPUNT_H
  
  #include "V.cpp"
  
  typedef int P;
  
   class A
  {
      public:
          P peso;
          V* vertice;
          A* siguiente;
  
           A();
          ~A();
  };
  
   #endif // ARISTAPUNT_H
  </code></pre>
  
  <p><em>A.cpp:</em></p>
  
  <pre><code>#include "A.h"
  
   A::A()  //&lt;- Error: 'A' does not name a type
  {
       peso = 0;
       siguiente = 0;
       vertice = 0;
  }
  
   A::~A()  // &lt;- Error: 'A' does not name a type
  {
      delete siguiente;
  }
  </code></pre>
  
  <p>How would I be able to fix that?</p>