2009-03-11 4 views
0

Es ist möglich, TRACE-Makro als printf-ähnliche Funktion (Variable Argumentliste) zu verwenden. Wenn es diese Möglichkeit unterstützt, warum sind dann die Makros TRACE0, TRACE1 und TRACE2 erforderlich, außer sie beschränken die Anzahl der Argumente. Auch hier möchte ich wissen, ob es Vorteile gibt, die Anzahl der Argumente für TRACE-Makros einzuschränken.TRACE- und TRACE0-, TRACE1- und TRACE2-Varianten

Antwort

0

Wenn ich mich richtig erinnere, hatte MFC 4 nicht variadic TRACE-Anweisungen. Das wurde in einer späteren Version hinzugefügt. Die alten TRACEn-Makros sind wahrscheinlich für Rückwärtskompatibilität vorhanden.

0

Es ist nicht notwendig die anderen Trace-Varianten (Trace1, Trace2 usw.) zu haben, aber es bedeutet, dass Sie nicht die Sorge haben, zu überprüfen, dass Sie die richtige Anzahl von Argumenten zu gehen haben zusammen mit Ihrer Formatanweisung (für das Ablaufmakro).

Werfen Sie einen Blick auf die Makrodefinition für diese Makros: es ist ziemlich gut zu lesen!