Vorteile von Conditional-Preprocessor gegenüber Conditional-Anweisungen

Ich habe noch nie mitgearbeitet#ob, #ifdef, #ifndef, #sonst, #elif und#endif.

Als ich einige Quellcodes durchging, fand ich eine umfangreiche Verwendung dieser Direktiven. Habe einige Lektüren über Konditional-Präprozessoren gemacht, aber keine Ahnung davon gefundenWie unterscheiden sie sich von normalen bedingten Anweisungen?. Also habe ich mich gefragt, was der Vorteil von folgendem Code ist:

#include<iostream>
int main()
{
    int i = 0;

    #if i == 0
         std::cout<<"This";
    #else
         std::cout<<"That";
    #endif
    return 0;
}

darüber:

#include<iostream>
int main()
{
    int i = 0;

    if (i == 0)
         std::cout<<"This";
    else
         std::cout<<"That";
    return 0;
}

Auch wennbenutzen/ nicht zu verwendender Konditional-Präprozessor?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage