Na gut, da fundierte Antworten gewünscht wurden, hier ein Vergleich zwischen VC++6 und VC++8 (2005 Express)
IDE und Editor
VC++6: Seiner Zeit (1997 rum) eine Revolution! Aber wir leben im Jahre 2006 und da will man etwas viel mehr als nur fehlerhaftes darstellen von Klassen/Funktionen/Parametern/Variablen/Makros usw.
Veraltet
VC++8: Marktführer in der IDE und im Editor, absolut freie Wahl des Designs (Drag'n Drop), absolut freie Wahl der Tastaturbefehle, absolut freie Wahl der Makroabläufe. Dank Intelli Sense kein Problem mehr mit fehlerhaften Darstellungen egal wovon. Was er nicht kennt, wird nach dem Kompilieren hinzugefügt.
Die IDE kann ebenfalls auf für C#, WebDeveloper, J#, VB.NET und viele mehr benutzt werden!
Compileroptimierung
VC++6: Damals Top, heute Flopp. Er kann einfach nicht mehr so gut. Ist klar: Heute gibt es neue Auslagerungen, neue Ideen, neue Techniken als vor fast 10 Jahren!
VC++8: Auch hier neben dem Intel-Compiler Marktführer. Beste Optimierung die geht und noch immer freie Möglichkeit die Optimierung zu beeinflussen mit eigenem Assemblercode vor der Kompilierung. Auch der Linker hilft mehr als in VC++6.
Standards
VC++6: Wir coden alle nach dem C++99 Standard, VC++6 kannte den noch nicht, da er noch nicht existierte. VC++6 hatte schon mit dem damaligen C++ Standard Probleme! Ich sag nur Scope-Bug bei for-Schleifen und verschachtelte Templates sowie Metaprogrammierung. Da war gnadenlos Ende. Heutige Features der STL sind auf diesem Compiler absolut unmöglich! Hashmaps sind auf VC++6 dank veraltetem Standards lam bis zum geht nicht mehr!
VC++8: Boost hat es bewiesen: VC++8 hat weniger Probleme mit dem aktuellen Standard als GCC, Intel, Borland, IBM, Bloodsheet uvm. Microsoft hat hier wieder nur die Besten der Besten dazu gesetzt. Bei der Entwicklung und einhaltung des Standards war nicht nur Microsoft von der Party, sondern auch das ISO-Komitee und Scott Meyers haben es auf Herz und Nieren geprüft! Ergo: Bester Compiler am Markt.
Makrofertigkeit
VC++6: Makros waren hier ein absoluter Graus, ähnelten mehr an Excel Visual Basic als an ein richtiges Makro. Lausiger Debugger für Makros und total umständlich.
VC++8: Dank C#, Managed C++ und VB gibt es hier keinerlei Probleme. Auch externe Programme können als Makro benutzt werden! 1a Debugger und total Benutzerfreundlich.
Component Object Model
VC++6: Aktuelle COM-Objekte können nicht mehr benutzt werden, meist auch fehlerhafte COM-Objekte waren in VC++6 enthalten.
VC++8: Ein Traum für COM! Grenzen bei COM? Keine mehr.
Debugger
VC++6: Mit diesem Teil zu arbeiten, war schon ein Drama. Benutzerunfreundlich, schäbbig und absolut Fehlerhaft!
VC++8: Mal wieder eines: Marktführer! Benutzerfreundlich, schnell, korrekt und unglaublich Flexibel! Dazu noch Ausbaufähig durch den User!
Secure Code
VC++6: Ein Traum :lol:
VC++8: sprintf und co wurden durch sichere Funktionen ersetzt! Pufferüberläufe sind unmöglich geworden bei diesen Funktionen. Auch Stack Canarians wurden eingebaut um zu prüfen ob es Probleme im Stack gab. und und und!
Specials
VC++6: Gibt es keine Nennenswerten.
VC++8: Anbindung ans Microsoft Office 2003 Visio! Ergo: UML Diagramme aus dem Code heraus erzeugen und aus dem UML-Diagramm Code erzeugen! Das selbe gillt auch für PAPs. Direktanbindungen an Microsoft SQL 2005 Server und viele andere Microsoftprodukte, die das Coding mehr als nur erheblich erleichtern können!!
Also stellt sich hier ganz einfach die Frage: Ein Relikt benutzen oder den kostenlosen Marktführer? Also ich fahr auf edle Qualität ab, und das ist bei mir VC++8.
- Patrick