CPP项目中的预编译头和wsdl文件中生成的C
Precompile header in CPP project and C generated from wsdl file
我正在CPP中创建简单的web服务客户端。我已经在svcutil
和wsutil
实用程序的帮助下从WSDL生成了源文件。最后得到了web服务接口header
和C
文件。
当我将C文件包含到使用预编译头的控制台应用程序中时,我会收到消息:
Error 3 error C1853: 'DebugTestLib3.pch' precompiled header file is from a previous version of the compiler, or the precompiled header is C++ and you are using it from C (or vice versa)
如何解决这个问题?
C编译器不能使用C++编译器生成的.pch文件。两个基本选项:
-
将.c文件重命名为.cpp,这对于自动生成的源文件来说可能很好。
-
右键单击"解决方案资源管理器"窗口中的.c文件、"属性"、"c/c++"、"预编译头"、"预编译头"选项。将其更改为"不使用"。您可能还需要修改#包含.h文件的C++源文件,它可能需要#include指令周围的
extern "C" {}
,这样C++编译器就知道.h文件包含C声明。当您得到链接器错误时,就会知道这是必要的,这些错误显示了损坏的函数名称。
相关文章:
- .cpp和.h文件中的模板专用化声明
- 为什么两个不同的未命名名称空间可以共存于一个cpp文件中
- 文本文件中的单词链表
- CMake-按正确顺序将项目与C运行时对象文件链接
- 使用新行和不使用新行读取文件
- 在C++程序中输入的文本文件将不起作用,除非文本被复制和粘贴
- 挂起和取消挂起一个文件DLL
- 如何确定我已使用非编码文件到达 EOF?
- 命名空间中具有.h和.cpp文件的类
- 如何使用ndk-build.cmd构建Android.so文件
- 从包含m行的文件中提取n行,必要时(惰性地)重复该文件
- 读取文件并输入到矢量中
- 在C++中查找文件
- c++库的公共头文件中应该包含什么
- 用c++从输入文件中读取另一行
- Cppcheck生成xml转储文件
- ONVIF:配置文件 S 需要哪些 wsdl 文件
- gsoap-wsdl2h在wcf-wsdl文件上失败
- CPP项目中的预编译头和wsdl文件中生成的C
- Visual C++添加WSDL文件