title: Incomplete type not allowed error
body: <p>I created a  class which displays labels(GameLabel) using openGL, I've gotten 2 very odd errors which i haven't been able to resolve.</p>
  
  <p>error C2079: 'displayPlayer' uses undefined class 'GameLabel'
  IntelliSense: incomplete type is not allowed</p>
  
  <p>Here is my code;</p>
  
  <p>The function in Game.cpp which calls the label class</p>
  
  <pre><code>void Game::draw(SDL_Window *window)
  {
  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // clear window
  
  // draw player
  glColor3f(1.0,1.0,1.0);
  glBegin(GL_POLYGON);
    glVertex3f (xpos, ypos, 0.0); // first corner
    glVertex3f (xpos+xsize, ypos, 0.0); // second corner
    glVertex3f (xpos+xsize, ypos+ysize, 0.0); // third corner
    glVertex3f (xpos, ypos+ysize, 0.0); // fourth corner
  glEnd();
  GameLabel displayPlayer = new GameLabel(xpos+(xsize/2.0f), ypos+ysize, "Player");
  //The ablove line is the one flagging the errors.
  </code></pre>
  
  <p>Now here is the GameLabel.h.</p>
  
  <pre><code>#include &lt;SDL_ttf.h&gt;
  #include &lt;GL/glew.h&gt;
  #include &lt;string&gt;
  #include "Game.h"
  class GameLabel
  {
  public:
      GameLabel(float fx, float fy, char stri);
  ~GameLabel(void);
  void textToTexture(const char * str,  SDL_Surface* stringImage);
  void draw(SDL_Surface* stringImage);
  friend class Game;
  
  protected:
  SDL_Surface stringImage;
  private:
  GLuint texID;
  GLuint height;
  GLuint width;
  GLfloat x;
  GLfloat y;
  char str;
  };
  </code></pre>
  
  <p>and finally GameLabel.cpp constructor</p>
  
  <pre><code>GameLabel::GameLabel(float fx, float fy, char stri)
  {
  x = fx;
  y = fy;
  str = stri;
  
  }
  </code></pre>