Makros (C++)



  • Mein C++ Buch erklärt Makros nicht gut genug und deshalb wollte ich fragen, ob nicht irgendjemand anderes es mir erklären kann.

    Meine Fragen sind:
    Wozu sind Makros wichtig?
    Wann benötigt man sie?
    Und bekomme ich Übungen zum Thema Makros her?

    Danke für's Lesen.

    Mfg Talon


  • Mod

    Include-Guards. Das war's zu 99% auch schon für Anfänger.

    Später noch bedingte Compilierung (zwecks Debugging oder für systemabhängigen Code), aber das dauert noch eine Weile, bis du das brauchst. Oder für Metaprogrammierungsaufgaben - das wird dann aber schon echt exotisch.

    Lass dir aber bloß nicht von C-Leuten einreden, du würdest Makros für kleine Funktionen, typunabhängige Funktionen, symbolische Konstanten oder sonst was brauchen. Das ist in C++ nicht so. Daher erklärt dein Buch vermutlich auch nicht viel.



  • Ja genau das Buch erklärt sehr wenig darüber deshalb hatte ich angst davor es nicht zu beherrschen

    Danke für die Hilfe 🙂 jetzt bin ich aber beruhigt :))



  • Einen Fall hab ich noch: Wenn man Bezeichner auch als String braucht (für Factories z.B.).

    #include <iostream>
    using namespace std;
    
    #define SHOW(a) cout << #a << "=" << a << '\n';
    
    int main(){
    	int x=5;
    	int y=++x;
    	int z=x++;
    	SHOW(x);
    	SHOW(y);
    	SHOW(z);
    }
    /*
    Ausgabe: 
    x=7
    y=6
    z=6
    */
    

Log in to reply