Non-standard extension Warning mit enum
-
Was für Uralt-Compiler sollen das denn sein, für die ein enum-Tag nicht automatisch ein Typ ist? Mit "vor 1998" braucht da keiner ankommen, eher 1988
Man könnte auch Kompatibilität mit C wollen, aber dann ist die Frage so oder so hinfällig.
-
Soom schrieb:
Hast du noch irgendwas beizutragen was nicht zur Frage gehört?
Ja, denn die habe ich im ersten Beitrag ja beantwortet.
-
Ein weiterer Grund, dass ich enum class verwendet habe war übrigens, dass man diese forwarden kann.
-
Ups, falscher Thread.
-
Soom schrieb:
Nur: wie mache ich es unter diesen Umständen besser? Den Typ der Methode kann ich nicht ändern, auch ist eine Überladung keine Option, da ich dann 'zig identische Methoden hätte, die sich nur in ihrem enum-Parametertyp unterscheiden.
C++03 Variante: Bezeichner eindeutig machen.
enum eInitConfig { eInitConfig_min = 0, eInitConfig_own = 0, eInitConfig_stored = 1, eInitConfig_max = 1, };
Oder der grässliche Workaround:
struct eInitConfig { enum eInitConfig_ { min = 0, own = 0, stored = 1, max = 1, }; };
C++11 Variante:
enum class
-
cooky451 schrieb:
Soom schrieb:
Hast du noch irgendwas beizutragen was nicht zur Frage gehört?
Ja, denn die habe ich im ersten Beitrag ja beantwortet.
Nein, hast du nicht. Ob das typedef nun dasteht oder nicht macht keinen Unterschied, die Warnung ist trotzdem da (das hatte ich auch schon geschrieben, nur hast du das vor lauter Klugschiss wohl übersehen). Und bevor du dich mit deinem Halbwissen wieder auf den Compiler rausredest: das Problem tritt mit Visual Studio 2010 in den Default-Einstellungen auf.
-
Soom schrieb:
Und bevor du dich mit deinem Halbwissen wieder auf den Compiler rausredest: das Problem tritt mit Visual Studio 2010 in den Default-Einstellungen auf.
rofl, offensichtlich bist du erst auf Nachfrage in der Lage, weiter als 10 Buchstaben zu lesen. Und raffst selbst dann nicht, dass VS10 weder die neuste Version des Compilers ist, noch enum class unterstützt, noch weiß, dass dieser Code C++11 standardkonform ist.
Also, bevor du die nächste Frage stellst: Lesen lernen.
-
cooky451 schrieb:
rofl, offensichtlich bist du erst auf Nachfrage in der Lage, weiter als 10 Buchstaben zu lesen. Und raffst selbst dann nicht, dass VS10 weder die neuste Version des Compilers ist, noch enum class unterstützt, noch weiß, dass dieser Code C++11 standardkonform ist.
Fällt es dir eigentlich immer so schwer zuzugeben, dass du was nicht weißt/kannst/unrecht hast?
Eine Seite vorher war noch mein Compiler schuld, der deiner Meinung nach von vor 1998 ist, jetzt irritiere ich dich mit Fakten, da ist plötzlich VS2010 nicht mehr zu gebrauchen - was kommt als nächstes? Soll ich VS2025 verwenden, damit deine Theorien zur Realität passen?
@hustbaer: Danke, die Hinweise passen, sind schlüssig, lassen sich verwenden und haben mir weitergeholfen.
-
Soom schrieb:
Fällt es dir eigentlich immer so schwer zuzugeben, dass du was nicht weißt/kannst/unrecht hast?
Nein. Aber du hast ja doch noch nicht lesen gelernt, so wird das nichts.
Soom schrieb:
Eine Seite vorher war noch mein Compiler schuld,
Ist er jetzt ja auch immernoch.
Soom schrieb:
der deiner Meinung nach von vor 1998 ist,
Nein. Der Compiler, bei dem du da ein typedef brauchst, der ist von vor 1998. Gib dich nicht auf, lern Lesen und - . Na Schreiben kannste ja schon.
Soom schrieb:
jetzt irritiere ich dich mit Fakten, da ist plötzlich VS2010 nicht mehr zu gebrauchen
Wieso nicht zu gebrauchen? VS10 weiß schlicht und ergreifend noch nicht, dass das konformer Code ist, weil es beim Release noch nicht abzusehen war. Was ist daran so schwer zu verstehen?
Soom schrieb:
- was kommt als nächstes? Soll ich VS2025 verwenden, damit deine Theorien zur Realität passen?
LOL, Alter. Wenn ich solche Versager-
BlogsPosts lese, roflt es mich rückwärts durchs Treppenhaus meiner Oma.
-
cooky451 schrieb:
LOL, Alter. Wenn ich solche Versager-
BlogsPosts lese, roflt es mich rückwärts durchs Treppenhaus meiner Oma.Soziale Kompetenz bei cooky451: 0,nix
Wenn du jeden Tag von der Schule nach Hause rennen musst, weil dich jetzt selbst die Mädchen aus deiner Klasse regelmäßig verkloppen wollen, dann könnte das genau daran liegen.
-
Kriegt euch wieder ein, und zwar beide. Das ist nicht im "find ich jetzt nich OK"-Stil von antiautoritären Muttis gemeint.
-
Schließ den Thread doch einfach, die Frage ist seit dem ersten Beitrag geklärt.
@Soom Da hast du recht, ich werde gehasst von allen die nur schreiben und nicht lesen können.
-
cooky451 schrieb:
Schließ den Thread doch einfach, die Frage ist seit dem ersten Beitrag geklärt.
Und er hat es immernoch nicht kapiert: dein typedef-Hinweis hat an der Warnung genau NICHTS geändert. Wenn du wirklich was dazulernen willst, dann lies dir hustbaers Beitrag durch, der war fachlich fundiert und hat eine brauchbare Lösung gezeigt.
Jetzt geht dein Blutdruck wahrscheinlich wieder ganz rapide in die Höhe weil du nicht recht gehabt hast und jemand anders was zum Problem hat beisteuern können...