关于multiple defination of (多重定义 )的错误?
题目
关于multiple defination of (多重定义 )的错误?
1、若是在 A.h 中声明和定义一个int mm=3.
但若是在B.c 、C.c 和D.c中都包括了A.h(#include "A.h")
编译的时候不会有错可是在链接时却会出现许多multiple defination of (多重定义 )的错误!这是怎么回事呢?如何解决呢?
2、若是在 A.c 中声明和定义一个int mm=3.
但若是B.c 、C.c 和D.c中都extern int mm=3,编译的时候不会有错可是在链接时也会出现许多multiple defination of (多重定义 )的错误!这时候出现的错误和上面的错误应该是一样的吧,如何解决呢?
有可能是和我的编码规范有关吧?一个全局变量的声明 和定义如何写才好呢,以便让其他文件可以方便的使用它?
几个.c文件没有互相包含!
答案
1.不要在.h里面声明变量,而是在.c(.cpp)里面定义int mm=3;然后在A.h里面用extern int mm;2.extern不要赋值.ps:还没解决?回楼上,没用的,那个能防止重复include,但是不能解决这里的问题.头文件里面是不提倡也不应该定...
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
最新试题
- Her grandpa and grandma often take her to the park.改为同意句
- 以社会或个人的理想和愿望为依据,对还没有实现的事物有所想像 是什么成语?急!
- 用NA表示阿伏加德罗常数,33gT2O中所含质子数___,种子数为____,所含原子数与___g氦所含原子数相等.
- CO+HbO2=HbCO+O2(可逆反应,Hb为血红蛋白)平衡常数K为?
- 设方程e^(x+y)-3x=2y^2 -5=0 确定函数y=y(x),求dy/dx 这是求隐函数么?
- 蒸发于沸腾有什么不同点和相同点?
- 一个牧场养牛的5分之2刚好等于养羊只数的4分之3.这个牧场养牛162头,养羊多少
- 东京;巴黎;北京哪个地方最先看到太阳
- m^2-4mn+4n^2-3(m-2n)+2
- 四面体,五面体,六面体,八面体,的顶点数和面数,棱数
热门考点