In a nutshell, conditional pre-processing logic is about making code-logic available or unavailable for compilation using macro definitions.
Three prominent use-cases are:
different app profiles (e.g. debug, release, testing, optimised) that can be candidates of the same app (e.g. with extra log...