我想在c++中使用
XColormapEvent
结构。
定义为
typedef struct {
int type;
unsigned long serial;
Bool send_event;
Display *display;
Window window;
Colormap colormap;
Bool new;
int state;
} XColormapEvent;
如您所见,有一个名为
new
的元素。
可以用c++访问吗?
简单的例子:
struct Y
{
int new;
};
int main()
{
Y y;
y.new=5; // expected unqualified-id before »new«
}
您不能在 C++ 编译器中使用
new
作为变量名称,但可以
#define new new_mem
#include "troublesome_header.h"
#undef new
这不是标准的 C++ 和 UB 等,但它适用于所有编译器,它仅在标准使用的假设编译器中不起作用。