如何使用Visual Studio项目转换功能
这篇文章将为大家详细讲解有关如何使用Visual Studio项目转换功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
前一个版本使用VS2003开发,现在已经不能满足我们的需求,我们决定在新版本中升级到VS2008。
使我们升级的原因主要有这些:
VS2003在调试时不支持直接查看STL各种数据容器中的元素(其实通过指针可以查看某个元素的值,但不能一次查看所有元素); 不支持并行构建,二十多万行代码,构建一次需要近半个小时;
需要支持Vista/Win7操作系统,VS2003没有对UAC的支持,且不能直接增加manifest文件;
VS2008相对于VS2003其他的一些优化
升级的过程主要由VS2008的转换向导完成。按着提示的操作一步步下来,就能得到转换后的解决方案和工程文件。打开新的sln后构建,把有问题的地方改掉,将老的lib及dll文件也使用VS2008重新编译,构建出来的软件可以正常运行,看上去一切正常。
但是过了一段时间,测试人员发现Release版本的整体性能有大幅下降,几乎是原来的二分之一到三分之二。由于我们的产品的定位是海量数据分析,所以性能至关重要。我和另外一名开发人员一起来分析这个问题的原因,所有工程属性都是正确的,也查看了svn的提交记录,似乎一切都没有问题。后来,我们发现,当前工程的编译器选项中对于是否优化设置的是"***化速度/O2",但是改成"全局优化/Og"后性能反而有所提升。再查看原先的vcproj文件,发现虽然设置的是"***化速度/O2",但是在编译器的命令行中却没有"/O2"的选项。将编译器优化选项改为其他再改回"***化速度/O2",可以看到编译器命令行中增加了"/O2"选项。重新构建,性能恢复正常。
问题产生的原因,猜测应该是 VS2008转换VS2003的工程文件后丢失了优化选项,但是在工程属性页中错误的显示默认选项"***化速度/O2"。
所以,VS提供的项目转换功能是不可靠的,建议将转换后的工程文件完整仔细的检查一遍。或者干脆不转换,重新建立一套工程文件,把原先的代码添加进来,重新设置所有工程的属性。这样效率比较低,但是最保险。
关于“如何使用Visual Studio项目转换功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341