游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2100|回复: 2

seabug兄,求救啊[1]

[复制链接]

22

主题

156

帖子

156

积分

注册会员

Rank: 2

积分
156
QQ
发表于 2004-1-26 11:24:00 | 显示全部楼层 |阅读模式
seabug兄,我想问一下,关于头文件的编译问题!我是将程序的接口(x.h)和实现(x.cpp)分开的,但以前从没有过这样的经验,所以搞不懂!我编写了main.h文件,其中定义了全局变量和winmain函数,还有回调函数,cpp文件对应的它的实现部分。这样生成一个窗口(无错误)。然后我又给工程加了一个dxdraw.h文件,和对应的cpp文件。头文件中有initddraw函数,updateframe函数(贴图),releaseall函数的原形声明。我在main.cpp文件中作了相关的处理。但编译错误,因为initddraw函数的实现中有hwnd变量,说是没有声明,同样的main.cpp中调用的initddraw等函数也说是没有声明,于是我分别在main.cpp中加了#include “dxddraw.h”,dxddraw.cpp中加了#include “main.h”。这样编译无错误了,但是linker却报告说好多变量被重复声明了。我搞不懂应该怎样解决,帮我看看啊! [em4] [em4] [em4]

1万

主题

1万

帖子

2万

积分

管理员

中级会员

Rank: 9Rank: 9Rank: 9

积分
20468
发表于 2004-1-26 15:27:00 | 显示全部楼层

Re:seabug兄,求救啊[1]

看完你的描述后头有点晕,不过你说的重复声明可能是因为没有对头文件进行唯一性的处理,比如:
dxddraw.h文件
你在头文件中进行如下定义
#ifndef _DXDDRAW_
#define _DXDDRAW_

// ...这里填你的头文件内容

#endif
这样可以避免多个文件都包含dxdraw.h而导致的头文件声明定义的重复问题,你可以试验一下。

22

主题

156

帖子

156

积分

注册会员

Rank: 2

积分
156
QQ
 楼主| 发表于 2004-2-4 11:24:00 | 显示全部楼层

Re:seabug兄,求救啊[1]

好的,我试试,呵呵,谢谢了,大哥!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-2-25 03:42

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表