CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

高分求答案,语法编译出错,急!!!

楼主chaomz(chaomz)2006-03-20 18:07:42 在 VC/MFC / 基础类 提问

如下的一个头文件的代码在VC7下如果编译目标是静态库形式则没有问题,如果是动态库则报如下错误信息   error   C2143:   语法错误   :   缺少“}”(在“常数”的前面)  
        迷惑,郁闷啊!  
   
  namespace   MSN    
  {  
          class   Message  
          {  
  public:  
                  enum   FontEffects  
                  {  
                          BOLD_FONT   =   1,  
                          ITALIC_FONT   =   2,  
                          UNDERLINE_FONT   =   4,  
                          STRIKETHROUGH_FONT   =   8  
                  };  
                   
                  enum   CharacterSet  
                  {  
                          ANSI_CHARSET   =   0x00,                               //<<<<----编译出错指向这行  
                          DEFAULT_CHARSET   =   0x01,  
                          OEM_DEFAULT   =   0xff  
                  };  
                   
                  enum   FontFamily  
                  {  
                          FF_DONTCARE   =   0,  
                          FF_ROMAN   =   1,  
                          FF_SWISS   =   2,  
                          FF_MODERN   =   3,  
                          FF_SCRIPT   =   4,  
                          FF_DECORATIVE   =   5  
                  };  
                   
                  enum   FontPitch  
                  {  
                          DEFAULT_PITCH   =   0,  
                          FIXED_PITCH   =   1,  
                          VARIABLE_PITCH   =   2  
                  };  
                   
                  class   Headers  
                  {  
  public:  
                          Headers(const   std::string   &   rawContents_)   :   rawContents(rawContents_)   {};  
                          Headers()   :   rawContents("")   {};  
                          std::string   asString()   const;  
                          std::string   operator[](const   std::string   header)   const;  
                          void   setHeader(const   std::string   header,   const   std::string   value);  
  private:  
                          std::string   rawContents;  
                  };  
  private:  
                  std::string   body;  
                  Message::Headers   header;  
  public:  
                  void   setFontCharacterSet(CharacterSet   cs);  
  } 问题点数:100、回复次数:5Top

1 楼Stefine(CSDN最菜滴猩猩)回复于 2006-03-20 18:17:33 得分 10

初步猜测:应该是动态库里不包含这个数据类型ANSI_CHARSET    
   
  只是猜测,请楼下的帮忙证实Top

2 楼orbit(走了走了)回复于 2006-03-20 18:30:10 得分 30

ANSI_CHARSET   是不是系统定义过的标号?Top

3 楼Mackz(在相互)回复于 2006-03-20 18:30:36 得分 50

改个名字看。尽量不要用内置的常量名。Top

4 楼orbit(走了走了)回复于 2006-03-20 18:34:36 得分 10

2006-03-20   18:30:00   准时发生Top

5 楼chaomz(chaomz)回复于 2006-03-20 18:43:51 得分 0

哦,可能是系统已经有这个定义了,我改个名字就好了,但静态库为什么可以呢?Top

相关问题

  • 编译出错
  • 编译出错??
  • 编译出错!!
  • 编译出错
  • 这两个例子并没有编译出错啊,为什么SCJP的答案说编译出错???
  • 编译时出错?
  • fieldsbyname 编译出错
  • dll编译出错~~
  • PB编译出错
  • dll编译出错

关键词

  • 编译
  • 语法
  • 如下
  • enum
  • font

得分解答快速导航

  • 帖主:chaomz
  • Stefine
  • orbit
  • Mackz
  • orbit

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo