einen throw Fehler als compiler Fehler ausgeben?
-
Hallo,
wie kann man (speziell bei visual studio und wenn man kann) einen eigenen Fehler vom Compiler ausgeben lassen, wenn ich etwas bestimmtes mache? Ich wollte einen eigenen Datentyp programmieren, der nur integer größer 1 im Konstruktor entgegennimmt und das Programm sonst nicht kompiliert. Schlielich kann ich ja auch nicht:```cppint a ="q"kompilieren.
-
Vermutlich garnicht. Du vermischst Compile-Time Fehler (kann der Compiler ausgeben) mit Laufzeitfehlern (treten beim Ausführen des Programms auf, da hat der Compiler seinen Job schon lange erledigt).
Ansonsten sind Exceptions oder
asserteine Möglichkeit.Edit:
Vielleicht kann man da mitconstexprda was basteln, aber da kenne ich mich nicht aus. Du brauchst dazu auch einen Compiler, der mind. C++17 unterstützt.
-
Mit Compile Time Informationen könntest du das ein oder andere mit
static_assertumsetzen.
-
Ok Danke, so könnte das funktionieren