...Die Konstante EXIT_SUCCESS ... EXIT_FAILURE...
C++ verlangt nämlich, dass die main()-Funktion mit einer return-Anweisung beendet wird, die einen Ergebniswert zurückliefert.
Die wichtigste Regel bei Macros ist: Benutze keine, es sei denn, es ist unabdingbar. Fast jedes Macro demonstriert eine Schwäche in der Programmiersprache, im Programm oder beim Programmierer.