C++ visualc&x2B+;错误C2143:语法错误:缺少'';在'之前;常数';
虽然错误与我所经历的完全相同,但我周围的环境却完全不同。我确实尝试声明一个常量:C++ visualc&x2B+;错误C2143:语法错误:缺少'';在'之前;常数';,c++,visual-c++,C++,Visual C++,虽然错误与我所经历的完全相同,但我周围的环境却完全不同。我确实尝试声明一个常量: const long CS_DROPSHADOW = 0x20000; const long WS_EX_LAYERED = 0x80000; 报告两个常量名称的错误 常量声明位于头文件中,在任何类声明之外 以下是H文件的外观: #ifndef _ASD_SMARTWINDOW_MAIN_H_TAGXXXMAIH_ #define _ASD_SMARTWINDOW_MAIN_H_TAGXXXMAIH_ #inc
const long CS_DROPSHADOW = 0x20000;
const long WS_EX_LAYERED = 0x80000;
报告两个常量名称的错误
常量声明位于头文件中,在任何类声明之外
以下是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
CS_DROPSHADOW和WS_EX_LAYERED在WinUser.h中声明。
确认您在声明之前没有包含它。就是这样!谢谢!:-)。你不应该使用你的包含守卫。这意味着我开始ifndef是用u?对不起,这是一个6年前的项目,我正试图恢复,里面有很多可怕的东西::-D。