• 7563阅读
  • 6回复

编译时提示multiple definition,找不出原因! [复制链接]

上一主题 下一主题
离线nzp
 
只看楼主 倒序阅读 楼主  发表于: 2006-05-24
在编译时出了一连串的multiple definition,
以下是其中一部分:
/usr/include/bits/stdio.h:69:multiple definition of '......'
.obj/functions.o(.bss+0x20):/home/.../qt/.../functions.cpp:15:first defined here.
.obj/inputIV.o(.bss+0x61aa0):multiplle definition of '......'
.obj/functions.o(.bss+0x61aa0):first defined here.
.....
.....
.....

这是怎么回事呀?
离线guyansrg

只看该作者 1楼 发表于: 2006-05-24
就是出现了重复定义
离线guyansrg

只看该作者 2楼 发表于: 2006-05-24
试一试把重复的去掉
离线yhyh_10231
只看该作者 3楼 发表于: 2006-05-24
可能是你定义的函数与标准函数相同了
离线ivan_0699
只看该作者 4楼 发表于: 2006-08-07
打开Makefile,将其中file部分重复的去掉就好了
离线sea_butcher
只看该作者 5楼 发表于: 2007-12-18
我也曾经遇到过类似问题
我的解决方法是:将头文件与构造函数分开
例如写一个播放的窗口时,不要在头文件中包含构造函数,当其他窗口调用时,就不会出现重复定义的问题了.
奋斗!
离线foxyz

只看该作者 6楼 发表于: 2007-12-18
说你重复定义就肯定是。别着急。好好看看相关错误所在的函数或者变量是否有重复,比如:跟同一namespace里的什么重名了。最好的习惯是把自己的东西放在自己的namespace里。
快速回复
限100 字节
 
上一个 下一个