Visual C++ 6.0和Visual C++ 2008有什么区别?

gio*_*gio 10 c++ visual-c++-6 visual-studio

MS VS C++ 6.0和MSVS C++ 2008有哪些优缺点?

提出这样一个问题的主要原因是仍然有许多优秀的程序员喜欢使用旧版本而不是最新版本.

是否有任何理由可能更喜欢旧的而不是新的?

Chr*_*isN 28

Visual Studio 2008优于Visual C++ 6.0的优点:

  • 更符合标准的C++编译器,具有更好的模板处理能力
  • 支持x64/mobile/XBOX目标
  • 改进了STL实施
  • 支持C++ 0x TR1(智能指针,正则表达式等)
  • 安全C运行时库
  • 改进了代码导航
  • 改进的调试器; 运行远程调试会话的可能性
  • 更好的编译器优化
  • 许多错误修复
  • 更快地构建在多核/多CPU系统上
  • 改进的IDE用户界面,具有许多不错的功能
  • 改进了IDE中的宏支持; DTE允许访问更多IDE方法和变量
  • 更新的MFC库(在VS2008 Service Pack 1中)
  • 支持OPENMP(简易多线程)(仅限VS2008专业版)

迁移到Visual Studio 2008的缺点:

  • IDE比VS6慢很多
  • Intellisense仍有性能问题(用VisualAssistX代替它可以帮助)
  • 并排的程序集使应用程序部署更加成问题
  • 本地(离线)MSD​​N库非常慢
  • 如前所述这里,有一个在专业版中没有探查

根据Joel最近的博客文章的精神,我将其他一些答案结合在一个答案中(并将其作为一个社区拥有的帖子,因此我不会从中获得代表).我希望你不介意.非常感谢Laur,NeARAZ,26 of 17,me.yahoo.com以及其他所有回答的人. - 克里斯


Vla*_*ged 4

好吧,一方面可能是因为用 MSVS 6 构建的可执行文件只需要现在随 Windows 附带的 msvcrt.dll(C 运行时)。

MSVS 2008 可执行文件需要附带(或已安装)msvcrt9。

另外,您已经使用 6.0 C 运行时为 Windows 32 位编译了许多 OSS 库,而对于 2008 C 运行时,您必须获取源代码并自行编译它们。

(大多数这些库实际上是用 MinGW 编译的,它也使用 6.0 C 运行时 - 也许这是另一个原因)。

  • 您可以静态链接 VCRT 并且不具有任何依赖项。 (2认同)