ausgabe von quelltextdatei und zeilennummer bei EXCEPTIONS



  • hi.

    folgende seite gibt informationen, wie man EXCEPTIONS behandelt:
    http://cplus.kompf.de/artikel/exceptions.html

    nun wollte ich gerne wissen, wie ich folgenden hinweis umsetzen kann:

    In realen Anwendungen sollte man außerdem die Möglichkeit zur Übergabe von Modulnamen, Quelltextdatei und Zeilennummer des Fehlerortes vorsehen.

    DANKE
    STICK.



  • Es gibt die vordefinierten Makros __FILE__ (enthält den kompletten Namen der Quell-Datei) und __LINE__ (enthält die aktuelle Zeilennummer) - daraus kannst du dir deinen Fehlertext zusammenstellen:

    //Verwandelt einen Präprozessor-Wert in String-Form
    #define str(x) str2(x)
    #define str2(x) #x
    
    #define FILEPOS string(__FILE__ ": " str(__LINE__))
    
    ...
    throw runtime_error("Division by zero - " + FILEPOS);
    ...
    


  • funktioniert wunderbar! DANKE!


Log in to reply