24小时热门版块排行榜    

查看: 1025  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

03010328

银虫 (正式写手)

[求助] 关于VS2010中C++在编译过程中出现的LNK2005 errors,特寻求相关人士给予帮助。 已有1人参与

自己利用VS2010所写的C++程序出现了大量的“LNK2005 errors”,久而久之,一直没有解决,今日特来请教:
        由于A.cpp、B.cpp、C.cpp等不同的cpp文件中需要同时调用一些全局变量,自定义宏,自定义函数等,因此我参考书上的作法,将这些变量、宏和函数统一写到了一个自定义的headline.h头文件中,然后再将所有的A.cpp、B.cpp和C.cpp文件中同时include "headline.h",结果经过编译时,就出现了大量的LNK2005 errors,然后经过查阅相关C++书籍和网络,得知在自定义的headline.h头文件的最开始,写入#pragma once命令,可以防止头文件被多次包含,可是楼主试了,仍然不灵;于是我又利用#ifndef、#define和#endif指令,可是结果仍然如出一辙。
        ①在楼主自定义的headline.h头文件中,关于我对#pragma once命令的使用:
1        #pragma once
2        int Lx=50,Ly=50,Lz=50;  /*不同cpp文件中需要调用的全局变量*/
3        #define PI 3.14159265;  /*不同cpp文件中需要调用的自定义宏*/
4        int nint(double x)      /*不同cpp文件中需要调用的自定义函数*/
         {
             return (int)(x+0.5);
         }
        ②在楼主自定义的headline.h头文件中,关于我对#ifndef、#define和#endif等命令的使用:
1        #ifndef _HEADLINE_H
2        #define _HEADLINE_H
3        int Lx=50,Ly=50,Lz=50;  /*不同cpp文件中需要调用的全局变量*/
4        #define PI 3.14159265;  /*不同cpp文件中需要调用的自定义宏*/
5        int nint(double x)      /*不同cpp文件中需要调用的自定义函数*/
6        {
7            return (int)(x+0.5);
8        }
9        #endif
        ①和②两种方法所写的自定义headline.h头文件,在编译A.cpp、B.cpp和C.cpp等文件的过程中,仍然报错LNK2005 errors,目前楼主实在无能为力了,特请相关人士帮忙解答,因为楼主非计算机专业,只是临时工作需要掌握这些知识,谢谢!!!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

梦のしずく
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

03010328

银虫 (正式写手)

引用回帖:
4楼: Originally posted by libralibra at 2014-03-17 18:02:25
贴一下报错信息看看怎么回事

这个问题我已经解决了,昨天是我理解错了,原来函数的定义不能在.h头文件中进行,只能在.cpp源文件中进行,然后再将定义的函数和变量在.h头文件中进行声明,但是宏的定义可以在.h头文件中进行,而不是在.cpp文件中进行。不过还是要感谢各位的回答!!!
梦のしずく
5楼2014-03-18 11:55:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

cooooldog

铁杆木虫 (著名写手)

ส็็็

贴完整的项目文件;
ส็็็็็็็็็็็็็็็็็็็็
2楼2014-03-17 11:31:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

03010328

银虫 (正式写手)

引用回帖:
2楼: Originally posted by cooooldog at 2014-03-17 11:31:23
贴完整的项目文件;

就是这个,共有main、initial、force、integrate四个cpp文件,均需要调用自定义的headline.h头文件中的相应全局变量、自定义宏或者函数。
关于VS2010中C++在编译过程中出现的LNK2005 errors,特寻求相关人士给予帮助。
项目文件.png

梦のしずく
3楼2014-03-17 14:02:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

感谢参与,应助指数 +1
贴一下报错信息看看怎么回事
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
4楼2014-03-17 18:02:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见