您的位置:首页 > 编程语言 > C语言/C++

C++ 包含Cpp技巧

2014-02-02 13:12 267 查看
编程环境:vc 6.0

近几天来,在写一个工程,用到了第三方的库文件xml文件

一般,我们都会直接把第三方文件添加到工程中,这样编译之后,就可以用了

不过,用了第三方文件,导致,vc在显示类的时候,添加了很多不必要的显示,

例如:你直接把文件添加到工程中,类视图里面,就会解析出很多第三方的

库函数,这样在编程的过程中,让我十分苦恼,后来,才发现可以直接

这样

#include <good.cpp>

这样可以解决,一般,这样的话是可以解决,但是我放到我的工程里面,就悲剧了

导致各种错误

UI.obj : error LNK2005: "void * __cdecl pugi::impl::default_allocate(unsigned int)" (?default_allocate@impl@pugi@@YAPAXI@Z) already defined in FSolft.obj

UI.obj : error LNK2005: "void __cdecl pugi::impl::default_deallocate(void *)" (?default_deallocate@impl@pugi@@YAXPAX@Z) already defined in FSolft.obj

UI.obj : error LNK2005: "unsigned int __cdecl pugi::impl::strlength(char const *)" (?strlength@impl@pugi@@YAIPBD@Z) already defined in FSolft.obj

UI.obj : error LNK2005: "bool __cdecl pugi::impl::strequal(char const *,char const *)" (?strequal@impl@pugi@@YA_NPBD0@Z) already defined in FSolft.obj

例如上面这种,出现了 1000+个错误,让我直接悲剧了。。。。后来。。。。经过摸索了一下

解决方案如下,把hpp包含在某个工程的头文件中,把

cpp文件包含在实现文件中,这样就可以解决了。

例如:

比如你新建了一个工程,有一个 main.h 和main.cpp

我们需要使用 good.hpp 和 good.cpp

那么,我们可以在main.h中,添加#include "good.hpp"

在main.cpp中,添加#include "good.cpp"

这样,第三方库函数就不会显示了。这样编程起来也很顺心
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: