error C2143: 语法错误 : 缺少“;”(在“->”的前面)
gcyxf 2013-01-10 11:45:34 我在运行fltk程序时遇到这个错误:
源代码:
#ifndef FL_DOXYGEN
#ifndef Fl_X_H
# error "Never use <FL/win32.H> directly; include <FL/x.H> instead."
#endif // !Fl_X_H
#include <windows.h>
typedef HRGN Fl_Region;
typedef HWND Window;
typedef POINT XPoint;
#include <FL/Fl_Window.H>
#else
FL_EXPORT Window fl_xid_(const Fl_Window* w);
#define fl_xid(w) fl_xid_(w)
#endif // FL_LIBRARY || FL_INTERNALS
FL_EXPORT Fl_Window* fl_find(Window xid);
void fl_clip_region(Fl_Region);
fl_current_xmap
// most recent fl_color() or fl_rgbcolor() points at one of these:
extern FL_EXPORT struct Fl_XMap {
COLORREF rgb; // this should be the type the RGB() macro returns
HPEN pen; // pen, 0 if none created yet
int brush; // ref to solid brush, 0 if none created yet
} *;
inline COLORREF fl_RGB() {return fl_current_xmap->rgb;}
inline HPEN fl_pen() {return fl_current_xmap->pen;}
FL_EXPORT HBRUSH fl_brush(); // allocates a brush if necessary
FL_EXPORT HBRUSH fl_brush_action(int); // now does the real work
extern FL_EXPORT HINSTANCE fl_display;
extern FL_EXPORT Window fl_window;
extern FL_EXPORT HDC fl_gc;
extern FL_EXPORT MSG fl_msg;
extern FL_EXPORT HDC fl_GetDC(Window);
extern FL_EXPORT HDC fl_makeDC(HBITMAP);
结果是:
f:\cga\fltk-1.3.2\fl\win32.h(108): error C2872: “Window”: 不明确的符号
1> 可能是“f:\cga\fltk-1.3.2\fl\win32.h(39) : HWND Window”
1> 或 “f:\cga\fltk-1.3.2\fl\events.h(222) : fltk::Window”
1>f:\cga\fltk-1.3.2\fl\win32.h(112): error C2872: “Window”: 不明确的符号
1> 可能是“f:\cga\fltk-1.3.2\fl\win32.h(39) : HWND Window”
1> 或 “f:\cga\fltk-1.3.2\fl\events.h(222) : fltk::Window”
1>f:\cga\fltk-1.3.2\fl\win32.h(127): error C2872: “Window”: 不明确的符号
1> 可能是“f:\cga\fltk-1.3.2\fl\win32.h(39) : HWND Window”
1> 或 “f:\cga\fltk-1.3.2\fl\events.h(222) : fltk::Window”
1>f:\cga\fltk-1.3.2\fl\win32.h(130): error C2872: “Window”: 不明确的符号
1> 可能是“f:\cga\fltk-1.3.2\fl\win32.h(39) : HWND Window”
1> 或 “f:\cga\fltk-1.3.2\fl\events.h(222) : fltk::Window”
在另外一个文件中也有window的定义,但我不知道该怎么解决这个问题。上网搜了很多,但和我的这个情况不同,有大神可以帮忙解决一下么?非常感谢