如何修复VS2010 C ++ Express中的编译器错误C2850?
我正在使用VS2010 C ++ Express在运行64位Win 7的64位PC上构建Win32应用程序。 我成功地开发了许多项目 我已经在我的当前项目上工作了大约3周,并成功构建了应用程序的调试和发布版本(即,它们根据需要或多或少地运行。)
为了减轻明显的内存泄漏问题,我修改了一些我编写的函数,其中引用了windows函数DrawText()。我已经成功地在这个项目的其他地方使用了DrawText()和mbstowcs(),所以当我尝试编译所有源模块时,我很惊讶我的项目引发了以下错误:
错误C2850:'PCH头文件':仅允许在文件范围内;可能不在嵌套构造中
我咨询了许多C ++用户网站以获得解决方案并且空洞了。
到目前为止,我已经尝试了以下前所未有的补救措施:
(1)尝试了所有3个设置 项目 - >属性 - >配置属性 - > C / C ++ 预编译标题 - >预编译标题
(2)从源文件列表中删除了stdafx.cpp。
(3)从除stdafx.h之外的所有包含文件中删除“#pragma once”。
(4)在我的所有代码中验证了这些陈述 #pragma一次 和 #include“stdafx.h” 只出现一次,并在包含任一语句的每个文件顶部的全局空间中出现。
在一个网站上建议我重新开始一个空项目,但我还没有尝试过。
毋庸置疑,在VS2010决定为我的工作效率创造最新障碍之前,我从来没有弄乱任何这些废话。
有没有人对如何解决这个问题有任何见解?