title: C# Compiler Directives
body: <p>I’m looking at some C# code, and have come across the following statement:</p>
  
  <pre><code>#if DEBUG
      // Do something here
  #else
      // Do something else
  #endif
  </code></pre>
  
  <p>I assumed that DEBUG would be a defined somewhere as follows:</p>
  
  <pre><code>#define DEBUG
  </code></pre>
  
  <p>But I’m unable to find such a definition, although the code seems to behave as though it were set.  Is DEBUG a special case, and if so, how is it set / unset?</p>