The Preprocessor Is Not Evil
 
 
- There are still times the preprocessor is the best tool for the job
- #define … #ifdef … #endif is good for selectively enabling or disabling code, even from the compiler’s command line
- Works with tools such as autoconf
- More complex uses of the preprocessor don’t have C++ versions