title: Linker Error with use of stl map
body: <p>I am getting the following linker error:</p>
  
  <blockquote>
    <p>Error  1   error LNK2001: unresolved external symbol "private: static class std::map,class std::allocator >,struct SDL_Surface *,struct std::less,class std::allocator > >,class std::allocator,class std::allocator > const ,struct SDL_Surface *> > > CSurface::loadedSurfaces" (?loadedSurfaces@CSurface@@0V?$map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAUSDL_Surface@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAUSDL_Surface@@@std@@@2@@std@@A) CSurface.obj  </p>
  </blockquote>
  
  <p>The code for the header and cpp file for the CSurface compilation unit is at:</p>
  
  <p><a href="http://ideone.com/KMxdn" rel="nofollow">IdeOne.com code post</a></p>
  
  <p>What is causing this linker error to happen :( its driving me mad.</p>