I\'m wondering about instances when it makes sent to use #define and #if statements. I\'ve known about it for a while, but never incorporated it into my way of coding. How e
#define is used to define compile-time constants that you can use with #if to include or exclude bits of code.
#define USEFOREACH #if USEFOREACH foreach(var item in items) { #else for(int i=0; i < items.Length; ++i) { var item = items[i]; //take item #endif doSomethingWithItem(item); }