title: #defines in stdafx.h not being found, I have to copy-paste them into each file
body: <h2>stringize.h:</h2>
  
  <pre><code>#ifndef STRINGIZE_H
  #define STRINGIZE_H
  
  #define _STR2(x) #x
  #define _STR1(x) _STR2(x)
  #define _WARN __FILE__ "("_STR1(__LINE__)") : Warning : "
  #define _TODO __FILE__ "("_STR1(__LINE__)") : TODO : "
  
  #endif// STRINGIZE_H
  </code></pre>
  
  <p>If I <code>#include</code> this file in my .cpp, all works fine. But if I include it in stdafx.h, and then include stdafx.h in my.cpp file, these defines are not known:</p>
  
  <h2>SomeFile.cpp</h2>
  
  <pre><code>#include "StdAfx.h"
  #pragma message(_TODO"test")
  </code></pre>
  
  <blockquote>
    <p>warning C4083: expected 'string'; found identifier '_TODO'</p>
  </blockquote>
  
  <p>We use <code>#ifndef</code> and <code>#pragma once</code> guards but isn't the point of putting <code>"include stdafx.h</code> at the start of every cpp file exactly to save me doing it manually? We do have "Use precompiled headers" <em>enabled</em>.</p>