MAKRO mit STEUERMAKRO



  • Hallo!

    (auch wenn ich selbst kein Freund von Makros bin, wäre es schön, wenn mir jemand diese Frage beantworten würde)

    ist es möglich, mit Makros ein solches Konstrukt zu bauen:

    ...
    #define REPORTERROR(_strError) #ifdef ERROREPORTING theApp->GetErrorHandler()->Insert(_strError); #endif
    ...
    

    welches dann auch funktionieren sollte 🙂

    was ich mir damit ersparen möchte, ist folgende lästige Schreibweise:

    #ifdef ERROREPORTING 
        theApp->GetErrorHandler()->Insert(_strError); 
    #endif
    

    ich danke euch im Voraus



  • ehm anders:

    #if defined(REPORT_ERROR)
        #define ERROR(str) theApp->GetErrorHandler()->Insert(str);
    #else
        #define ERROR(str)
    #endif
    

    ...



  • ooooooh, MAN!! da hätt ich selbst drauf kommen können...Danke!!!! ich sitze definitiv schon zuuuu lange vor'm Rechner.

    Danke nochmal!!



  • Eleganter ist das vielleicht zu loesen, wenn du theApp je nach Bedarf mit einem anderen ErrorHandler ausstattest. Dann kannst du den Aufruf immer starten und es dem Errorhandler ueberlassen, ob er daraus was macht oder ob Insert() nur ein leerer Funktionsrumpf ist.



  • u.U. noch besser:

    #if defined(REPORT_ERROR)
        #define ERROR(str) ((void)(theApp->GetErrorHandler()->Insert(str)))
    #else
        #define ERROR(str) ((void)0)
    #endif
    


  • hustbaer schrieb:

    u.U. noch besser:

    wieso besser?


Anmelden zum Antworten