Определения препроцессора используются для глобальных определений препроцессора для текущего проекта;обычно определение препроцессора системы или компилятора.
например, когда в режиме отладки одно из определений будет _DEBUG, это будет использоваться при компиляции кода, если пользователь (программист) хочет сделать что-то другое при сборкев режиме отладки:
#ifdef _DEBUG
/// do something ONLY in debug mode
#endif