<p>What are the advantages/disadvantages between MS VS C++ 6.0 and MSVS C++ 2008? </p>

<p>The main reason for asking such a question is that there are still many decent programmers that prefer using the older version instead of the newest version.</p>

<p>Is there any reason the might prefer the older over the new?</p>

[{'answer_id': 62416, 'author': 'Vlagged', 'author_id': 6727, 'author_profile': 'https://Stackoverflow.com/users/6727', 'pm_score': 3, 'selected': True, 'text': "<p>Well, for one thing it may be because the executables built with MSVS 6 require only msvcrt.dll (C runtime) which is shipped with Windows now.</p>\n\n<p>The MSVS 2008 executables need msvcrt9 shipped with them (or already installed).</p>\n\n<p>Plus, you have a lot of OSS libraries already compiled for Windows 32 bit with the 6.0 C runtime, while for the 2008 C runtime you have to take the source and compile them yourself.</p>\n\n<p>(most of those libraries are actually compiled with MinGW, which too uses the 6.0 C runtime - maybe that's another reason).</p>\n"}, {'answer_id': 62427, 'author': 'Tom Hennen', 'author_id': 6839, 'author_profile': 'https://Stackoverflow.com/users/6839', 'pm_score': 0, 'selected': False, 'text': "<p>Visual C++ 2008 is much more standards compliant (Visual Studio 6 doesn't support the C++ standard set in 1998).</p>\n"}, {'answer_id': 62443, 'author': 'NeARAZ', 'author_id': 6799, 'author_profile': 'https://Stackoverflow.com/users/6799', 'pm_score': 0, 'selected': False, 'text': '<p>VS2008 has better compiler (much more standards compliant, better optimizations, ...).</p>\n\n<p>VS6 has much faster IDE. VS2008 IDE has many nice features, but it is a low slower than VS6.</p>\n'}, {'answer_id': 62455, 'author': '17 of 26', 'author_id': 2284, 'author_profile': 'https://Stackoverflow.com/users/2284', 'pm_score': 0, 'selected': False, 'text': "<p>Quick list of improvements you'll see going from 6.0 to 2008:</p>\n\n<ul>\n<li>Many bug fixes</li>\n<li>Better conformance to the C++ standard</li>\n<li>Better compiler optimization</li>\n<li>Improved UI (better intellisense, etc)</li>\n</ul>\n\n<p>One thing that people sometimes forget is that VS 6.0 is over 10 years old now!  At this point, I don't see how anyone would want to stick with it.</p>\n"}, {'answer_id': 62494, 'author': 'ChrisN', 'author_id': 3853, 'author_profile': 'https://Stackoverflow.com/users/3853', 'pm_score': 5, 'selected': False, 'text': '<p>Advantages of Visual Studio 2008 over Visual C++ 6.0:</p>\n\n<ul>\n<li>Much more standards compliant C++ compiler, with better template handling</li>\n<li>Support for x64 / mobile / XBOX targets </li>\n<li>Improved STL implementation</li>\n<li>Support for C++0x TR1 (smart pointers,  regular expressions, etc)</li>\n<li>Secure C runtime library</li>\n<li>Improved code navigation</li>\n<li>Improved debugger; possibility to run remote debug sessions</li>\n<li>Better compiler optimizations</li>\n<li>Many bug fixes</li>\n<li>Faster builds on multi-core/multi-CPU systems</li>\n<li>Improved IDE user interface, with many nice features</li>\n<li>Improved macro support in the IDE; DTE allows access to more IDE methods and variables</li>\n<li>Updated MFC library (in VS2008 Service Pack 1)</li>\n<li>support for OPENMP (easy multithreading)(only in VS2008 pro.)</li>\n</ul>\n\n<p>Disadvantages of moving to Visual Studio 2008:</p>\n\n<ul>\n<li>The IDE is a lot slower than VS6</li>\n<li>Intellisense still has performance issues (replacing it with VisualAssistX can help)</li>\n<li>Side-by-side assemblies make app deployment much more problematic</li>\n<li>The local (offline) MSDN library is extremely slow</li>\n<li>As mentioned <a href="https://stackoverflow.com/questions/61669/profiling-in-visual-studio-2008-pro">here</a>, there\'s no profiler in the Professional version</li>\n</ul>\n\n<hr>\n\n<p>In the spirit of Joel\'s recent <a href="http://www.joelonsoftware.com/items/2008/09/15.html" rel="nofollow noreferrer">blog post</a>, I\'ve combined some of the other answers posted into a single answer (and made this a community-owned post, so I won\'t gain rep from it). I hope you don\'t mind. Many thanks to Laur, NeARAZ, 17 of 26, me.yahoo.com, and everyone else who answered. -- ChrisN</p>\n'}, {'answer_id': 62507, 'author': 'Steffen', 'author_id': 6919, 'author_profile': 'https://Stackoverflow.com/users/6919', 'pm_score': 1, 'selected': False, 'text': '<p>Besides the deployment mentioned above, the main advantage of MSVC 6.0 is speed. Because it is a 10 year old IDE it feels quite fast on a modern computer. The newer versions of Visual Studio offer more advanced features, but they come at a cost (complexity and slower speed).</p>\n\n<p>But the biggest draw-back of MSVC 6.0 is its non-compliant C++-Compiler and Library.  If you intend to do serious C++-Programming this is a show-stopper. If you only build MFC-Applications it is probably not much of a problem.</p>\n'}, {'answer_id': 62660, 'author': 'Kinjal Dixit', 'author_id': 6629, 'author_profile': 'https://Stackoverflow.com/users/6629', 'pm_score': 0, 'selected': False, 'text': '<p>one tough thing we encountered was that "value" became a keyword.</p>\n'}, {'answer_id': 62845, 'author': 'Community', 'author_id': -1, 'author_profile': 'https://Stackoverflow.com/users/-1', 'pm_score': 1, 'selected': False, 'text': '<p>Visual C++ 6.0 integrates with memory tracking tools, such as Purify, HeapAgent, BoundsChecker and MemCheck, thoroughly and well since those memory tracking tools were actively maintained and aggressively sold after Visual C++ 6.0 came out.</p>\n\n<p>However, since C++ has been out of vogue for a while, the companies that sell memory tracking tools still sell them but never update or integrate them with new Visual C++ versions, including Visual Studio 2008.  So, using memory tracking tools with Visual Studio 2008 is frustrating, errorprone and, in some cases, impossible.</p>\n'}, {'answer_id': 62887, 'author': 'PeterM', 'author_id': 6971, 'author_profile': 'https://Stackoverflow.com/users/6971', 'pm_score': 2, 'selected': False, 'text': "<p>I would like to add that it's not the case that applications developed using Visual C++ 2008 must require more DLLs than those developed using Visual C++ 6.0. That's just the default project configuration.</p>\n\n<p>If you go into your project properties, C/C++, Code Generation, then change your <strong>Runtime Library</strong> from Multi-threaded DLL and Multi-threaded Debug DLL (Release and Debug configurations) to <strong>Multi-threaded</strong> and <strong>Multi-threaded Debug</strong>, your application should then have fewer dependencies.</p>\n"}, {'answer_id': 62902, 'author': 'Laur', 'author_id': 7134, 'author_profile': 'https://Stackoverflow.com/users/7134', 'pm_score': 2, 'selected': False, 'text': '<p>Off the top of my head, the advantages of the new Visual Studio are:</p>\n\n<ul>\n<li>stricter adherence to standards</li>\n<li>support for x64 / mobile / XBOX\ntargets </li>\n<li>better compiler optimizations</li>\n<li>(way) better template handling</li>\n<li>improved debugger; possibility to\nrun remote debug sessions</li>\n<li>improved IDE</li>\n<li>improved macro support; DTE allows access to more IDE methods and variables</li>\n</ul>\n\n<p>Disadvantages:</p>\n\n<ul>\n<li>IDE seems slower</li>\n<li>Intellisense still has performance\nissues (replacing it with\nVisualAssistX can help)</li>\n<li>runtime not universally available</li>\n<li>source control integration not up to\npar (although in all fairness VC6\nlacks this feature completely)</li>\n</ul>\n'}, {'answer_id': 64758, 'author': 'stevex', 'author_id': 8831, 'author_profile': 'https://Stackoverflow.com/users/8831', 'pm_score': 1, 'selected': False, 'text': '<p>Since VC6 most of the focus of Visual Studio has been on C# and .NET, as well as other features, so some C++ old-timers see VC6 as the good old days.  Things have improved in Visual Studio for C++ developers since those days, but not nearly as dramatically as for .NET users.</p>\n\n<p>One way that VS2008 is significantly better than VC6 is that it can build C++ projects in parallel.  This can result in significantly faster builds even on a single CPU system, but especially if you have multiple cores.</p>\n'}, {'answer_id': 64935, 'author': 'introp', 'author_id': 8398, 'author_profile': 'https://Stackoverflow.com/users/8398', 'pm_score': 2, 'selected': False, 'text': '<p>Did you know that MS VC6\'s implementation of the STL isn\'t thread-safe?  In particular, the reference counting optimization in basic_string blows up even when compiled with the multi-threaded libraries.\n<a href="http://support.microsoft.com/kb/813810" rel="nofollow noreferrer">http://support.microsoft.com/kb/813810</a></p>\n'}, {'answer_id': 379446, 'author': 'FryGuy', 'author_id': 28776, 'author_profile': 'https://Stackoverflow.com/users/28776', 'pm_score': 0, 'selected': False, 'text': '<p>Visual C++ 6 can be very buggy at times compared to 2008. Some things in particular:</p>\n\n<ul>\n<li>Poor template support/oddities (for instance <code>sometemplate&lt;othertemplate&lt;t&gt;&gt;</code> not working, but <code>sometemplate&lt; othertemplate&lt;t&gt;</code> > working)</li>\n<li>Not standards compliant</li>\n<li>Resource editor is rubbish ("blue lines" seem to move around randomly, among other things)</li>\n<li>Only supports editing certain kinds of 8-bit bitmaps (I have to use imagemagick to convert bitmaps saved in paint.net to be able to be seen in picture resources)</li>\n<li>Terrible support for working with read-only files / quirky sourcesafe integration.</li>\n</ul>\n\n<p>Sometimes developing in VS6 feels like trying to get websites looking good in internet explorer 5.5</p>\n'}, {'answer_id': 1258349, 'author': 'Community', 'author_id': -1, 'author_profile': 'https://Stackoverflow.com/users/-1', 'pm_score': 1, 'selected': False, 'text': "<p>If you install all service packs for VS6 you still have a solid IDE/compiler combo. As a software developer who have to release products in the wild (over Internet) I don't want to o ship the VC++ runtimes and .NET framework everytime (I can't bundle them directly in my installer/executable, its forbidden by Microsoft). You know, several megabytes of runtimes to run kilobytes of code is kinda stupid. VC++ 6.0 only need your executable and 2 .DLL at best.</p>\n\n<p>Also, debug runtimes cannot be distributed with VC++ .NET, not really good when I have a client which need to do some debugging of my products :)</p>\n\n<p>There is in my opinion the major reasons why I still use VC++ 6.0, but the IDE itself is ugly (ie: no tabbing support). I usually bypass the IDE limitations by using codeblocks instead (CodeBlocks support CL.EXE/LINK.EXE for all VC++ versions)</p>\n\n<p>Cobolfoo</p>\n"}]
['https://Stackoverflow.com/questions/62389', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/6619/']