title: Avoiding conditional code compilation
body: <p>Google C++ Style Guide (<a href="http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Preprocessor_Macros" rel="nofollow">http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Preprocessor_Macros</a>) says:</p>
  
  <p>"Instead of using a macro to conditionally compile code ... well, don't do that at all"</p>
  
  <p>Why is it so bad to have functions like</p>
  
  <pre><code>void foo()
  {
      // some code
  
  #ifdef SOME_FUNCTIONALITY
      // code
  #endif
  
      // more code
  }
  </code></pre>
  
  <p>?</p>