fatal error LNK1169: 找到一个或多个多重定义的符号

来源:互联网 发布:淘宝店铺联盟报名入口 编辑:程序博客网 时间:2024/06/11 07:50

今天遇到一种fatal error LNK1169报错的特殊情况,之前一直没有注意。不是一般的常见问题,解决方法可能没有普遍的适用性。先说一下现象,一般情况下C++程序,都会在.h文件中声明方法,在.cpp文件中定义方法,可是一般遇到非常简单的方法就会在.h文件中声明并直接定义了。我一直是这么认为的,而且认为这样做是没有问题的。

但是,今天现实给我上了一课,这样的认识是非常局限的,如果这个非常简单的方法只在对应的.cpp文件中使用,那么这样做是完全没有问题的。但是,如果这个方法还被其他.cpp文件调用,而且这些.cpp文件之间还存在依赖关系,那就会出现问题,异常报错“fatal error LNK1169: 找到一个或多个多重定义的符号”就会出现。

下面就是那个非常简单的方法:

tstring FormatVCAResult(const VCAResult& result){tstring strResult;//...return strResult;}

这是本人今天遇到的一个特殊情况,网上的大众方法试了很多都没有用,如果遇到这个报错,网上其他的方法行不通的话,可以考虑是不是本文的情况,希望能帮到大家。

阅读全文
0 0
原创粉丝点击