参考:http://blog.csdn.net/quyang0602/article/details/7620078

在今天编写编译器过程中遇到了multiple definition of 的问题,而且还不止一个:

问题一:如下两段代码之间存在上述错误,且错误点就在代码段2的函数实现处。

代码段1:

#include "Lexical_Analysize_Function.cpp"
using std::cout;
using std::endl;
int main()
{
    vector<pair<string,int> > vp = Lexical::AnalysizeFunction();
    for(int i=0; i<vp.size(); i++)
    {
        cout << "("<<vp[i].first << " -> " << vp[i].second<<")"<< endl;
    }
    return 0;
}

代码段2:

#include "Lexical_Analysize_Function.h"
vector<pair<string,int> > Lexical::AnalysizeFunction(){
    vector<pair<string,int> > vp;
    ifstream fin("test.c");

......

}

解决方案:将代码段1的#include "Lexical_Analysize_Function.cpp"改为#include "Lexical_Analysize_Function.h"即可解决该问题,在下拙劣具体出错原因我也不得而知。

问题2:问题的描述省略。

解决方案:若存在multiple definition of的错误,你首先要检查的是你的函数定义和函数实现是否分开,若没有分开,那么分开实现基本就能解决问题,当然其他文件的必须也是包含.h文件。

multiple definition of相关推荐

  1. 解决multiple definition of的方法

    因为最近编写的一个程序,工程量比较大. 只是子文件就10+多个了,所以,将一些全局变量全部声明在了自己定义的shao.h头文件中了. 今天又增加了一个解算模型的子函数,在编译的时候就报了multipl ...

  2. (转)解决multiple definition of的方法

    (转)解决multiple definition of的方法 参考文章: (1)(转)解决multiple definition of的方法 (2)https://www.cnblogs.com/sa ...

  3. 【转】解决多文件编译中连接错误 multiple definition of*****

    总结了解决multiple definition of的方法: 问题原因:     当多个文件包含同一个头文件时,并且你的.H里面没有加上条件编译 #ifndef TEST_H #define TES ...

  4. Android之jni编译出现multiple definition of ‘××××ב

    1.问题 编译ndk代码的时候提示 multiple definition of '×××××' 2.原因 多个文件包含同一个头文件时,在Android.mk文件里面写了2个文件 ×××_src_fi ...

  5. 如何解决linux下编译出现的multiple definition of错误

    今天,在编译quagga的过程中出现了multiple definition of的错误.该错误表示不同文件对同一变量进行了重复定义.因此,可以从以下几个方面来排查这个问题: 1. 是否定义了重复变量 ...

  6. 解决C++中multiple definition of问题

    1.global.h #ifndef _GLOBAL_H #define _FACEDETECT_Hstruct People{string name;int age;}p_info; #endif2 ...

  7. Linux Mint 21编译Android kernel,遇到 multiple definition of `yylloc‘ 的错误解决

    由于gcc和g++版本的更新,在编译之前的Android内核会出现各种各样的问题,本文就multiple definition of `yylloc' 问题解决给出解决方案 本文环境如下: OS: L ...

  8. Qt: multiple definition of XXX

    使用Qt编译源文件时出现很多multiple definition of XXX的报错: 可能原因是在多次包含global.h时重复定义了变量和函数.但检查过代码后,发现并不存在重复定义的变量和函数, ...

  9. 解决 multiple definition of

    总结了解决multiple definition of 的方法: 问题原因:     当多个文件包含同一个头文件时,并且你的.H里面没有加上条件编译 #ifndef TEST_H #define TE ...

最新文章

  1. java 自带thread分析工具_java自带的jvm分析工具
  2. 这只狗,其实是猫变的:“撸猫神器”StarGAN v2来了!
  3. Apache Httpd 2.2 配置CA证书,实现Https加密通讯
  4. 继BERT之后,这个新模型再一次在11项NLP基准上打破纪录
  5. ANSYS FLEXlm License Manager的卸载方法
  6. 兰华峰:商业模式驱动企业参与MSU评测
  7. php错误没有进入catch,php – 致命错误:没有try / catch块的未捕获异常
  8. NGINX 4xx 5xx 状态码构造
  9. 「Java工具类」Apache的Beanutils和PropertyUtils工具类
  10. 解决Navicat激活、注册时候出现No All Pattern Found的问题
  11. ScienceWord控件问题以及IE8对于base64编码图片长度限制的解决方案
  12. 解决学校邮箱屏蔽邮件的问题/收不到邮件
  13. tinymce移动端使用_中小站长该如何做好移动端SEO优化
  14. allegro16.6使用汇总
  15. 【Mysql系列】如何实现王者荣耀排名
  16. 50个开机进BIOS按键查询
  17. 第十四章 字符编码(补充)
  18. 关于UI使用ContentSizeFitter组件同步立即响应
  19. html 中写目录列表,制作的HTML目录列表
  20. 【小程序自定义组件,冒泡,自定义导航栏,页面栈】

热门文章

  1. CMake常见变量——Project和CMake相关信息
  2. [总结篇3]Provider_network的含义
  3. 随机洗牌算法 银行家算法
  4. 3 账套升级u8_用友U8条码管理的应用对仓库有什么好处?
  5. python jieba分词教程_Python jieba 分词
  6. Java中映射怎么实现_我们如何在Java 9的JShell中实现映射?
  7. 俄罗斯机器人雄鹿_世界上最''倒霉''的机器人:逼真到难以置信,为忍受痛苦而生...
  8. Git各指令的本质,真是通俗易懂啊
  9. 国内首个比特币勒索病毒制作者落网,但过程有点好笑...
  10. 面试:字符串拼接,什么时候用StringBuilder?