title: How to implement precompiled headers into your project
body: <p>I understand the purpose and reasoning behind precompiled headers.  However, what are the rules when implementing them?  From my understanding, it goes something like this:</p>
  
  <ol>
  <li>Set your project up to use precompiled headers with the YU directive.</li>
  <li>Create your stdafx.h file and set that to be your precompiled header.</li>
  <li>Include this as the top include statement in each of your .h files.</li>
  </ol>
  
  <p>It this correct?  Should you exclude the including it in the files that are included within your precompiled header?  Currently, I get the following compilation error when following my intuition with this:</p>
  
  <blockquote>
    <p>error C2857: '#include' statement
    specified with the /Ycstdafx.h
    command-line option was not found in
    the source file</p>
  </blockquote>
  
  <p>The command-line options are as such:</p>
  
  <blockquote>
    <p>/Od /I
    "../External/PlatformSDK/Include" /I
    ".." /I "../External/atlmfc/Include"
    /D "_DEBUG" /D "_UNICODE" /D "UNICODE"
    /Gm /EHsc /RTC1 /MDd /Yc"stdafx.h"
    /Fp"....\Output\LudoCore\Debug\LudoCore.pch"
    /Fo"....\Output\LudoCore\Debug\"
    /Fd"....\Output\LudoCore\Debug\vc80.pdb"
    /W4 /WX /nologo /c /ZI /TP /wd4201
    /errorReport:prompt</p>
  </blockquote>