2009-04-22 130 views
2

我在一家在VC6上进行C++开发的公司工作,我们正在考虑迁移到VS 2008.从Visual Studio C++ 6.0到VS 2008?

升级有什么好处?

有什么好处?

迁移项目文件的任何指南/步骤,或我应该知道的陷阱?移动到不同的开发界面人们可以吗?

回答

9

对我来说,升级到2008年的最大原因是C++编译器符合标准的水平。它很大程度上是从VC6改进而来,并且能够使用大多数熟悉或想要使用的库。包括STL,BOOST和TR1。

缺点是升级时的正常问题。例如,改进的标准遵从意味着它可能会破坏一些依赖于非标准行为的代码。没有具体的例子,但我确定他们在那里。

+5

“for”变量作用域,而wchar_t!= short是我能想到的两个例子。 – 2009-04-22 05:26:03

+0

我认为最大的变化是他们翻转了从ARM(pre-98)到ISO(后98)规则的转换默认值。你仍然可以得到旧的行为(如果你真的想要 - 不难修复) – MSalters 2009-04-22 10:59:38

2

有很多好处,其中有一个很成熟,先进和友好的环境。除此之外,编译器已经改进并且不用说 - STL ... 此外,网络中的所有论坛,所有信息都可以通过VS的最新版本访问,而不是老版本。 缺点和没有向后兼容性。含义:一旦你迁移,你不能在以前的版本中打开这个项目。 由于编译器之间的差异,您可能会遇到一些编译问题。 您也可能会遇到一些“包含”路径问题,因此您可能需要执行一些手动配置设置。 我强烈推荐它。去吧!

0

MFC和COM完全支持,至少它们是专业版。

3

的好处是:

  • 你会从一个5+岁的编译器,有模板支撑穷人一个这是更最新的,并且符合标准被移动。
  • 您将花费更少的时间来研究编译问题,这是编译器已知的问题,而不是代码问题。
  • 广泛可用的C++文献和文档将与您的编译器相关得多。

缺点是: - 可能需要一些时间,否则可能会花费一些时间,例如为您的产品添加新功能。

移植过程中最大的问题可能是您的代码不符合VC6允许编译的代码。此代码可以编译失败的VS2008。我想也有一些Win32 API可能已经改变,同样对于MFC & ATL类。

以获取问题的大小感觉最简单的方法是解决这对其他VC项目不依赖单一的小项目。查看您获得了多少错误以及修复它们需要多长时间。

0

很多人都提到移动的优点。我建议你做出这个举动,但这里有两个最令我烦恼的地方:

  • 你需要一个工程文件来调试一个二进制文件。在VC6中,您可以将一个exe拖放到VC窗口并进行调试。在此之后的每个版本中,首先需要一个项目文件。
  • 一切都是一个额外的鼠标点击。很多菜单项被移到了更远的一个菜单级别,这很烦人,如果你是像我一样的鼠标垃圾。
3

为了把事情的角度:VC6就发布了2000年之前,它针对性全新的操作系统,如Windows 98和NT4。到目前为止,这些操作系统已经退役。