Hierfür gibt es einen denkbar einfachen Trick mit C-Macros (jaja ich weiß, aber hin und wieder bin sogar ich da pragmatisch :P ).
#include <iostream>
#define DEBUGSTREAM if (!debug); else std::cerr
int main() {
bool debug = false;
DEBUGSTREAM << "Test\n";
return 0;
}
In diesem Code wird nichts ausgegeben und auch nichts ausgewertet, das Verhalten lässt sich einfach zur Laufzeit ändern. Tada! "Lazy Evaluation" on demand :)
Keine Kommentare:
Kommentar veröffentlichen