title: Passing a pointer object within a function in a header file
body: <p>I am experincing an issue where the error is:
  &quot;2061 syntax error: identifier 'Person'</p>
  <p>Enemy.h:</p>
  <pre><code>#include &quot;person.h&quot;
  
  class Enemy
  {
  public:
      Enemy(string, string);
  
      void damage(Person*, Enemy*);
  private:
      string name;
      string description;
  };
  </code></pre>
  <p>Enemy.cpp:</p>
  <pre><code>Enemy::Enemy(string name, string description)
  {
      this-&gt;name = name;
      this-&gt;description = description;
  }
  
  void Enemy::damage(Person* person, Enemy* enemy) 
  {
      // do something
  }
  </code></pre>
  <p>Person.h:</p>
  <pre><code>class Person
  {
  public:
      Person(string, string, int);
  
  private:
      string name;
      string description;
      int health;
  
  };
  </code></pre>
  <p>Person.cpp:</p>
  <pre><code>Person::Person(string name, string description, int health)
  {
      this-&gt;name = name;
      this-&gt;description = description;
      this-&gt;health = health;
  }
  </code></pre>
  <p>This line is causing the 206 error:</p>
  <pre><code>void damage(Person*, Enemy*);
  </code></pre>
  <p>Any help would be appreciated, thanks</p>