VC++错误求解???以下是什么错误啊,为什么会出现这种错误呢?菜鸟,误笑

zcp0317 2011-05-03 10:26:06
1>TankMain.obj : error LNK2005: "struct HDC__ * offhdc" (?offhdc@@3PAUHDC__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "int tank_vx" (?tank_vx@@3HA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "unsigned long diff_time" (?diff_time@@3KA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "int tank_vy" (?tank_vy@@3HA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "unsigned long start_time" (?start_time@@3KA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "int tank_now_dir" (?tank_now_dir@@3HA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "int mytank_life" (?mytank_life@@3HA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct linkqueue MyBomLQ" (?MyBomLQ@@3Ulinkqueue@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct tagRECT tank_rt" (?tank_rt@@3UtagRECT@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HBITMAP__ * tk_exp_bitmap" (?tk_exp_bitmap@@3PAUHBITMAP__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct IDirectDraw7 * lpDD" (?lpDD@@3PAUIDirectDraw7@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct tagRECT v_bom_rt" (?v_bom_rt@@3UtagRECT@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct IDirectDrawSurface7 * lpDDSPrimary" (?lpDDSPrimary@@3PAUIDirectDrawSurface7@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct IDirectDrawSurface7 * lpDDSBack" (?lpDDSBack@@3PAUIDirectDrawSurface7@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct tagRECT exp_rt" (?exp_rt@@3UtagRECT@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HBITMAP__ * bom_bitmap" (?bom_bitmap@@3PAUHBITMAP__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "int tank_last_dir" (?tank_last_dir@@3HA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct tagRECT h_bom_rt" (?h_bom_rt@@3UtagRECT@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct IDirectDrawSurface7 * * lpDDSOff" (?lpDDSOff@@3PAPAUIDirectDrawSurface7@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HDC__ * grasshdc" (?grasshdc@@3PAUHDC__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct _DDSCAPS2 ddscaps" (?ddscaps@@3U_DDSCAPS2@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HWND__ * hwnd" (?hwnd@@3PAUHWND__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct tagRECT bg_rt" (?bg_rt@@3UtagRECT@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HDC__ * tk_exphdc" (?tk_exphdc@@3PAUHDC__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HDC__ * bomhdc" (?bomhdc@@3PAUHDC__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HDC__ * exphdc" (?exphdc@@3PAUHDC__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HBITMAP__ * tank_bitmap" (?tank_bitmap@@3PAUHBITMAP__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct linkqueue EnemyBomLQ" (?EnemyBomLQ@@3Ulinkqueue@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct tanklinkqu EnemyTankLQ" (?EnemyTankLQ@@3Utanklinkqu@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HBITMAP__ * exp_bitmap" (?exp_bitmap@@3PAUHBITMAP__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct explinkqu BomExpLQ" (?BomExpLQ@@3Uexplinkqu@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "int flag" (?flag@@3HA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct explinkqu TankExpLQ" (?TankExpLQ@@3Uexplinkqu@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct tagRECT tk_exp_rt" (?tk_exp_rt@@3UtagRECT@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct _DDSURFACEDESC2 ddsd" (?ddsd@@3U_DDSURFACEDESC2@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HDC__ * bghdc" (?bghdc@@3PAUHDC__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HBITMAP__ * bg_bitmap" (?bg_bitmap@@3PAUHBITMAP__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HBITMAP__ * grass_bitmap" (?grass_bitmap@@3PAUHBITMAP__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HBITMAP__ * walls_bitmap" (?walls_bitmap@@3PAUHBITMAP__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "int x" (?x@@3HA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HDC__ * wallshdc" (?wallshdc@@3PAUHDC__@@A) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "long result" (?result@@3JA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "int y" (?y@@3HA) 已经在 Tank.obj 中定义
1>TankMain.obj : error LNK2005: "struct HDC__ * tankhdc" (?tankhdc@@3PAUHDC__@@A) 已经在 Tank.obj 中定义
1>LINK : warning LNK4199: 已忽略 /DELAYLOAD:OleAcc.dll;未找到来自 OleAcc.dll 的导入
1>D:\myTanl\Debug\myTank.exe : fatal error LNK1169: 找到一个或多个多重定义的符号
1>生成日志保存在“file://d:\myTanl\myTanl\Debug\BuildLog.htm”
1>myTank - 45 个错误,1 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
...全文
188 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
_free 2011-05-07
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wqhua 的回复:]

#pragma once
在偷吻件中加上
#pragma once
[/Quote]

强吻了怎么办,哈哈
wqhua 2011-05-07
  • 打赏
  • 举报
回复
#pragma once
在偷吻件中加上
#pragma once
tuyang120428941 2011-05-05
  • 打赏
  • 举报
回复
首先找到struct HDC__ * offhdc;int tank_vx;unsigned long diff_time;
在哪个头文件中定义了,假如你的这些变量在头文件"Test.h"中定义了,则有两种解决方法:
1.在Test.h头文件的最上方加上预处理指令:#pragma once
这个表示只编译这个头文件一次。
2.将头文件Test.h中所有的Code放入下面的语句之中:
#ifndef Test_H
#define Test_H

Code

#endif
这两种方法都可以,用哪种,it depends on you!嘿嘿!
一名程序员 2011-05-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 hztj2005 的回复:]
头文件重复包含错误。
用其中任意一个,比如struct HDC__ * offhdc搜索出该。h文件。
然后,加上:

#ifndef TEST_H
#define TEST_H
//该文件的内容


#endif
[/Quote]顶一下!
wtbike 2011-05-03
  • 打赏
  • 举报
回复
用一楼的方式就能解决了
ouyh12345 2011-05-03
  • 打赏
  • 举报
回复
重定义了
不要在头文件里定义变量或函数
hztj2005 2011-05-03
  • 打赏
  • 举报
回复
头文件重复包含错误。
用其中任意一个,比如struct HDC__ * offhdc搜索出该。h文件。
然后,加上:

#ifndef TEST_H
#define TEST_H
//该文件的内容


#endif
yinghuashihun 2011-05-03
  • 打赏
  • 举报
回复
重复包含了函数吧

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧