Exceptions/Fehler-Abfragen über defines deaktivieren/aktivieren?

Gast #4784335
Lesenswert?

Was haltet ihr generell davon, Fehlerabfragen in bestimmten Codeteilen 
per #define - oder was auch immer in der jeweiligen Programmiersprache - 
deaktivierbar zu machen?
Manche Datenstrukturen kann man ja bei ganz unterschiedlichen 
Anforderungen einsetzen. Bei kleineren oder mittleren Datenmengen ist 
der Zeitaufwand für die Fehlerprüfung evtl. irrelevant und man möchte 
sie auch zur Laufzeit im Release haben (also nicht nur als assert), bei 
großen Datenmengen und/oder auf schwächeren Systemen vielleicht nicht.
In C++ gibt es bei verschiedenen STL-Implementierungen ja so etwas, dort 
lassen sich bestimmte Checks deaktivieren. Aber möglich ist dies 
natürlich in allen Programmiersprachen, in denen man Codeteile per 
Konfiguration komplett "eliminieren" kann (C# u.a.).
Andererseits hat man dann u.U. ein gewisses Problem der der Konsistenz. 
Um zu wissen, ob der Code hier oder dort Fehler zurückgibt bzw. 
Ausnahmen wirft, muss man erst einmal nachsehen, wie das Ganze gerade 
konfiguriert ist.
Würdet ihr das also generell als schlechten Stil bezeichnen oder gibt es 
Fälle, in denen ihr so vorgehen würdet?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren