Welcher Compiler ist standard-konform?
-
hu? Ich kenne g++ als Alias auf den gcc mit ein paar Parametern, aber das ist was Linux-Spezifisches. Gibt es jetzt auch schon einen eigenständigen Compiler, der so heißt? Das wäre verwirrend.
-
Hallo,
zum Austesten der in "Modern C++ Design" vorgestellten Templatetechniken reicht der gcc ab Version 2.95. Ein 3er wäre aber besser.
Die sind etwas stabiler was den Templatesupport angeht und außerdem lernt man
gleich, dass man abhängige Namen qualifizieren muss.Der VC macht erst ab der Version 7.1 spass. Der VC 7 ist für "Modern C++ Design" nicht wirklich zu gebrauchen, da er weder partielle Spezialierung noch partielle Ordnung von Funktionstemplates unterstützt. Beides Sachen, die Alexandrescu heftig einsetzt.
-
[quote="Hauptmann"]mit dem VC7 hab ich gute Erfahrungen gemacht
quote]Hinzufügend sollte man erwähnen das der VC7.1 einiges an verbesserungen erhalten hat. Also ungewöhnlich standardkonformes Mikrosoftprodukt
-
Ist der aktuelle Dev-C++ standardkonform?
-
Erhard Henkes schrieb:
Ist der aktuelle Dev-C++ standardkonform?
der verwendet MinGW als compiler.
aktuelle MinGW Version ist (IIRC) gcc 3.2.3 - ist also ne ziemlich aktuelle version. sollte alles schaffen.
-
(Ach, wurscht :D)
-
@Hauptmann
Den VC7 und auch den 7.1 kann man knicken.
g++ ist schon vernünftiger.
-
Nenne mal ein Beispiel, an dem der MSVC++ 7 knickt.
-
Erhard Henkes schrieb:
Nenne mal ein Beispiel, an dem der MSVC++ 7 knickt.
VC7 oder VC7.1?
ich habe nur den VC7.0ersiehe beispielsweise: http://www.c-plusplus.net/forum/viewtopic.php?t=46021 oder simple Partielle Template Spezialisierung.
Wenn du den 7.1er meinst, der hat soviel ich weiss keine groeberen probleme.
-
Um mal beim Thema zu bleiben. borland c++ compiler 5.5 is 100% standartkonform, genauso wir borland c++ builder, so wie bloodshet c++ compiler (heißt der so? Ihr wisst schon welchen ich meine). Mit VC++ wäre ich sehr vorsichtig. Der unterstützt bestimmt kein ISO (is ja von winzigweich).borland c++ builder z.B. unterstürtzt zwar noch mehr als den ISO standart (die VCL und CLX z.B.) aber er unterstützt auf jeden fall die ISO standarts.
-
mwoidt schrieb:
Mit VC++ wäre ich sehr vorsichtig. Der unterstützt bestimmt kein ISO (is ja von winzigweich)
der VC 6 unterstüzt den ISO Standard zu 80%
VC 7 zu 90%
und VC 7.1 fast zu 100%
-
mwoidt schrieb:
Um mal beim Thema zu bleiben. borland c++ compiler 5.5 is 100% standartkonform, genauso wir borland c++ builder, so wie bloodshet c++ compiler
Oh, gcc ist wirklich gut (so heisst der bloodshed DevC++ Compiler)
aber bcc5.5? ne, nichtmal der BCB6beiweise?
template<class Value, class Default> struct GetPolicy { typedef typename IfThenElse < IsSame < Value, ::cppgi::DefaultPolicy >::result, Default, Value >::result result; }; //geht aber auf den borland compilern nicht //man muss template<class Value, class Default> struct GetPolicy { private: enum { issame = IsSame < Value, ::cppgi::DefaultPolicy >::result }; public: typedef IfThenElse < issame, Default, Value >::result result; }; //verwenden
es gibt natuerlich noch weitere - also von 100% ist er weit weg.
und wenn du mit bcc5.5 die command line version meinst, da kannst du die library wegschmeissen die dabei ist.
-
Da wären auch noch so Geschichten wie export die kein bekannter Compiler trotz Standard unterstützt...
-
der Comeau unterstützt Export