fatal error LNK1169: 找到一个或多个多重定义的符号
【摘要】 今天遇到一种fatal error LNK1169报错的特殊情况,之前一直没有注意。不是一般的常见问题,解决方法可能没有普遍的适用性。先说一下现象,一般情况下C++程序,都会在.h文件中声明方法,在.cpp文件中定义方法,可是一般遇到非常简单的方法就会在.h文件中声明并直接定义了。我一直是这么认为的,而且认为这样做是没有问题的。
但是,今天现实给我上了一课,这样的认识是非常...
今天遇到一种fatal error LNK1169报错的特殊情况,之前一直没有注意。不是一般的常见问题,解决方法可能没有普遍的适用性。先说一下现象,一般情况下C++程序,都会在.h文件中声明方法,在.cpp文件中定义方法,可是一般遇到非常简单的方法就会在.h文件中声明并直接定义了。我一直是这么认为的,而且认为这样做是没有问题的。
但是,今天现实给我上了一课,这样的认识是非常局限的,如果这个非常简单的方法只在对应的.cpp文件中使用,那么这样做是完全没有问题的。但是,如果这个方法还被其他.cpp文件调用,而且这些.cpp文件之间还存在依赖关系,那就会出现问题,异常报错“fatal error LNK1169: 找到一个或多个多重定义的符号”就会出现。
下面就是那个非常简单的方法:
-
tstring FormatVCAResult(const VCAResult& result){
-
tstring strResult;
-
//...
-
return strResult;
-
}
这是本人今天遇到的一个特殊情况,网上的大众方法试了很多都没有用,如果遇到这个报错,网上其他的方法行不通的话,可以考虑是不是本文的情况,希望能帮到大家。
文章来源: liuzhen.blog.csdn.net,作者:Data-Mining,版权归原作者所有,如需转载,请联系作者。
原文链接:liuzhen.blog.csdn.net/article/details/72850459
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)