Ich habe eine Reihe von Klassen, die den Debug Stream (std::cout
in diesem Fall), dass es erstellt wurde, erzählt, so dass ich die Programmausführung schön folgen kann. Ich habe mehrere Klassen, die Unterklassen von Basisklassen sind, die nicht abstrakt sind, was zu einer doppelten Nachricht führt, wenn eine Unterklasseninstanz erstellt wird. Ich möchte die Ausgabe im Basisklassenkonstruktor unterdrücken, wenn sie von einer Unterklasse aufgerufen wird. Ich weiß, das ist wahrscheinlich ohne einen ausgefallenen Trick nicht möglich, wenn es überhaupt überhaupt möglich ist.Unterdrücken der Ausgabe von Basisklassenkonstruktor
Ich dachte an die Backspace-Escape-Sequenz \b
, und tun gerade genug davon, um die vorherige Nachricht nicht wirklich effizient zu löschen, aber es ist Debug-Info, Leistung ist nicht so kritisch dann ...). Ich bin mir der Tragbarkeit oder Effektivität dieses Ansatzes nicht sicher.
Alle Ideen sind willkommen, danke für die Mühe!
Danke, das sieht aus wie die beste Lösung, ich habe nicht wirklich etwas dagegen die angepasste Konstruktor Signatur ... es scheint wie eine recht einfache Lösung. – rubenvb