#ifdef, #ifndef and #endif are preprocessor directives which allow us to check wether or not a value has already been defined using the #define directive. This can be useful when you’re including files that may already have the same value defined using #define.
Here’s an example that defines the value Whidbey only if it wasn’t defined before:
#ifndef Whidbey #define Whidbey #endif |
Similarly, what’s between #ifdef and #endif is compiled only if #ifdef returns true (and the value was defined before):
#ifdef Whidbey // Whidbey is already defined #endif |