2010-04-17 94 views
1

我正在修改Firaxis的Civilization 4核心游戏DLL。主机应用程序使用VC7构建,因此约束(源主机EXE未提供)。VC7.1 C1204内部编译器错误

我一直在努力重写一大块代码(关注低悬挂性能问题&内存泄漏)。我最近碰到一个内部编译器错误,当试图修改代码来使用数组类,而不是动态分配的二维数组时,我打算使用boost库中的矩阵(Civ4已经在使用boost,所以为什么不呢?) 。

基本上,问题归结为:如果我包含“boost/numeric/ublas/matrix.hpp”,我遇到了内部编译器错误C1204。

MSDN有这样一段话:MSDN C1204 KB有这样一段话:KB 883655

所以,我很好奇,是有可能解决这个错误没有一个KB/SP被应用,大大降低了复杂性代码?

此外,由于VC7不再被“支持”,任何人都没有一个VC7服务包的有效(支持)链接?

更新: 我没有安装VS2003;我只有VS2003工具包(即免费下载的编译器& SDK,而不是完整的IDE)。

回答

1

为KB 883655的解决办法是在VS 2003 SP1中提供:

+0

对不起,可能已经澄清,我没有VS 2003做的,只有该工具包,所以VS2003 SP1不起作用。 – 2010-04-18 21:31:39

+0

ouch - 根据您愿意投入多少工作(加上我不知道它是否真的可行)的事实,您可能可以将KB文章中提到的文件从SP1中提取出来安装程序。搜索“orca.exe”可能有助于打开MSI(您可能必须首先从自解压.cab文件中提取)才能打开该工具。 – 2010-04-19 00:25:20

+0

谢谢。我恰好已经休息了一周,所以我有时间去烧。 – 2010-04-20 20:39:22

相关问题