Visual C ++错误C2143:语法错误:缺少';'在'恒定'之前

时间:2012-02-22 11:33:31

标签: c++ visual-c++

虽然错误与others经历的错误完全相同,但我的环境完全不同。我实际上尝试声明一个常量:

const long CS_DROPSHADOW = 0x20000;
const long WS_EX_LAYERED = 0x80000;

报告两个常量名称的错误。

常量声明位于任何类声明之外的Header文件中。

以下是H文件的外观:

#ifndef _ASD_SMARTWINDOW_MAIN_H_TAGXXXMAIH_
#define _ASD_SMARTWINDOW_MAIN_H_TAGXXXMAIH_

#include "ASDTail.h" //Queue support.

namespace ASDSmartWindowMaster
{
...
};

class ASDSmartWindowListener
{
};

const long CS_DROPSHADOW = 0x20000;
const long WS_EX_LAYERED = 0x80000;

//Now comes a bunch of enums...
enum KLayeredWindowType
{ ... };


class ASDSmartWindow
{
};

#endif

1 个答案:

答案 0 :(得分:2)

CS_DROPSHADOW和WS_EX_LAYERED在WinUser.h中声明。 在声明之前确认您没有包含它。