我需要使用在Visual C ++ 6.0中开发的一些旧的C ++代码。现在它给了我很多编译错误。 (例如,“无法打开包含文件:'iostream.h'”...因为现在应该说 #include< iostream> 而不是 #include< iostream.h> 的)。
如何使用此代码而无需在整个地方进行更改?
答案 0 :(得分:15)
问题是,VC6非常破碎。你只是逃避了vc6中的那些编译器错误,因为vc6太松了。修复错误,你会很高兴你做了 - 我已经完成了两次转换,它使代码更加安全。
答案 1 :(得分:8)
不幸的是,VS2008中没有可以执行此操作的目标功能。
您只需要清理代码即可。幸运的是,VS2008比旧版Visual C ++(特别是VC 6)更符合标准。获取代码清洁应该有助于将来(您不太可能在以后担心这一点),以及在您决定移植到其他平台时提供帮助。
答案 2 :(得分:4)
正如其他人所提到的,改进使用VS 2008的代码将是一项值得的工作。
如果这不是一个选项(即旧应用程序崩溃并且需要立即修复),您可以尝试创建安装了VC 6的虚拟机并使用它来编译应用程序。
答案 3 :(得分:2)
如果您正在寻找一种基本上迫使Visual Studio 2005/2008将VC6编译器用于C ++代码的swich,它就不存在了。
有很多方法可以使用自定义make文件和大量hackery来实现。我不知道有谁达到了这个目标,但我确信有足够的工作可以实现。
但是,我同意这个帖子中的大多数其他人。现在修复代码可以让你获得更好的服务。你可能会花费尽可能多的时间或更多的时间来实现一个解决方案,就像你直接修复代码一样。
答案 4 :(得分:1)
你绝对应该修复代码。
如果你不能这样做,如果你只有像#include<iostream.h>
这样的问题,你也可以自己创建一个iostream.h
文件:
#pragma once
#pragma message("*********************************************")
#pragma message("Do not use #include <iostream.h> in new code!")
#pragma message("*********************************************")
#include <iostream>
using namespace std;