请教各位c++builder大侠 我定义了几个结构体 和一个类 怎么老是编译出现下列问题啊

structTIOCTL_SetParams{unsignedlongFlags;intHShift;unsignedshortPhase;unsignedshortGa... struct TIOCTL_SetParams{
unsigned long Flags;
int HShift;
unsigned short Phase;
unsigned short Gain_R;
unsigned short Gain_G ;
unsigned short Gain_B ;
unsigned short Offset_R;
unsigned short Offset_G;
unsigned short Offset_B;
int VShift;
int PllShift;
unsigned long Grab_Flags ;
unsigned long Grab_Flags_mask;
};

struct TIOCTL_GrabFrame{
char * Pixels;
int Length;
int Width;
int Height;
unsigned long Palette;
};

struct TIOCTL_VideoMode{
int Width;
int Height;
int VFrequency;
};

struct TIOCTL_SendPS2{
unsigned short Address;
unsigned short Length;
char Data[63];
};

struct TIOCTL_getsn{
char SerialNumber[31];
};

enum TVGA_RGB{VGA_RED, VGA_GREEN, VGA_BLUE};
class TVGA2USB
{
private:
protected:
TIOCTL_VideoMode FMode;
TIOCTL_GrabFrame FFrame;
TIOCTL_SetParams FParams;
THandle FDevice;
TRect FRectangle;
int FFrameRate;
String LastError();
TMemoryStream ReadImage();
TMemoryStream CreateFrameBuffer();
TMemoryStream CreateImageHeader();
void GetParams();
void SetParams(unsigned long Flags);
int GetHshift();
int GetVshift();
int GetPLLshift();
unsigned short GetPhase();
unsigned short GetOffset(const TVGA_RGB What);
unsigned short GetGain(const TVGA_RGB What);
String GetSerialNo();
Variant GetFrameBPP(Variant P);
void SetHshift(int Value);
void SetVshift(int Value);
void SetPLLshift(int Value);
void SetPhase(unsigned short Value);
void SetOffset(const TVGA_RGB What,unsigned short Value);
void SetGain(const TVGA_RGB What,unsigned short Value);
public:
TVGA2USB(unsigned short DeviceID,unsigned long Format=(V2U_GRABFRAME_FORMAT_BGR24 ||
V2U_GRABFRAME_BOTTOM_UP_FLAG));
~TVGA2USB();
String SerialNumber();
TMemoryStream Image();
TRect Rectangle();
int Width();
int Height();
int Frequency();
int FrameRate();
int Horizontal();
int Verticle();
int PLL();
unsigned short Phase();
unsigned short Offset(const TVGA_RGB What);
unsigned short Gain(const TVGA_RGB What);
};

[C++ Error] VGA2USB.h(58): E2238 Multiple declaration for 'TIOCTL_SetParams'
[C++ Error] VGA2USB.h(58): E2344 Earlier declaration of 'TIOCTL_SetParams'
[C++ Error] VGA2USB.h(77): E2238 Multiple declaration for 'TIOCTL_GrabFrame'
[C++ Error] VGA2USB.h(77): E2344 Earlier declaration of 'TIOCTL_GrabFrame'
[C++ Error] VGA2USB.h(86): E2238 Multiple declaration for 'TIOCTL_VideoMode'
[C++ Error] VGA2USB.h(86): E2344 Earlier declaration of 'TIOCTL_VideoMode'
[C++ Error] VGA2USB.h(93): E2238 Multiple declaration for 'TIOCTL_SendPS2'
[C++ Error] VGA2USB.h(93): E2344 Earlier declaration of 'TIOCTL_SendPS2'
.
.
.
.
展开
 我来答
liuxinling_06
2012-07-10 · TA获得超过1289个赞
知道小有建树答主
回答量:345
采纳率:100%
帮助的人:425万
展开全部
1. 编译的提示是重复定义,也就是说你的数据结构被定义了2次。
2. 你整个文件似乎都被提示重复定义,那么有很大问题来源于你的.h被多次引用。
#ifndef _VGA2USB_H__
#define _VGA2USB_H__

<这里填写你的.h全部代码>

#endif
在你的.h中加入上面的试试。
匿名用户
2012-07-10
展开全部
你的变量定义都不加int的么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式