title: Precompiled Headers in Header Files
body: <p>I ran into precompiled headers today for the first time..forever changing my life.  I can't believe compiling my C++ code could be that fast.  It makes total sense now..</p>
  
  <p>Anyway, one thing that is confusing me is that from what I've read so far, pre-compiled headers only should be added to source files( cpp? ).</p>
  
  <p>In Visual Studio, there is an option under Project Properties->C/C++->Advanced to "Force Include File".  I set that compiler option to <em>stdafx.h</em>.</p>
  
  <p>After doing this..I no longer require to include the headers I have added to my <em>stdafx.h</em>, even inside my header files ( source files are supposed to automatically include stdafx.h ).  Is this expected behaviour?  </p>
  
  <p>I can't find a place that's clear in the distinction between header/source files.</p>
  
  <p>If it does..great but I'm afraid it's another one of those things VC++ lets you get away with but will break in GCC.  And yes..it needs to be portable; at least between GCC and VC++.</p>