7781|3

80

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

declaration lacks type/storage-class(assuming 'int'):'class'这是什么原因 [复制链接]

我在ADS的text file中定义如下的基类:

//消息处理基类

#ifndef _OBJECT_H_
#define _OBJECT_H_

#include "config.h"

class CObject{
        public:
                virtual void WndProc(uint32 type, uint32 dat1, uint32 dat2, uint32 dat3);
                //virtual void OnTimer(uint8 timerID);
                };
#endif

就会出现如题所示的错误提示。这是什么原因啊?好事困惑,已经找了好久了也没有找到一个合适的方法。那位高手指点迷津。


Error   : C2225W: declaration lacks type/storage-class (assuming 'int'): 'class'
object.h line 11   

Error   : C2285E: expected ';' or ',' - inserted ';' before 'CObject'
object.h line 11   

Error   : C2483E: Ancient form of initialisation, use '='
object.h line 11   

Error   : C2456E: undeclared name, inventing 'extern int public'
object.h line 12   

Error   : (Serious) C2282E: expected '}' - inserted before ':'
object.h line 12   

Error   : (Serious) C2432E: non-constant initialiser
object.h line 12   

Error   : C2225W: declaration lacks type/storage-class (assuming 'int'): 'CObject'
object.h line 13   

Error   : C2285E: expected ';' or ',' - inserted ';' before 'virtual'
object.h line 13   

Error   : C2225W: declaration lacks type/storage-class (assuming 'int'): 'virtual'
object.h line 13   

Error   : C2285E: expected ';' or ',' - inserted ';' before 'void'
object.h line 13   

Error   : (Serious) C2322E: Expecting or but found '}'
object.h line 15   

Error   : C2225W: declaration lacks type/storage-class (assuming 'int'): 'class'
meter.h line 22   

Error   : C2285E: expected ';' or ',' - inserted ';' before 'CMeter'
meter.h line 22   

Error   : C2225W: declaration lacks type/storage-class (assuming 'int'): 'CMeter'
meter.h line 22   

Error   : C2285E: expected ';' or ',' - inserted ';' before ':'
meter.h line 22   

Error   : (Serious) C2322E: Expecting or but found ':'
meter.h line 22   

Error   : C2285E: expected ';' or ',' - inserted ';' before '{'
meter.h line 23   

Error   : (Serious) C2337E: Misplaced '{' at top level - ignoring block
meter.h line 23   

Warning : C2917W: no side effect in void context: 'virtual'
meter.h line 27   

Error   : (Serious) C2284E: expected ';' after command - inserted before 'BOOL'
meter.h line 27   

Error   : (Serious) C2292E: typedef name 'BOOL' used in expression context
meter.h line 27   

Error   : (Serious) C2284E: expected ';' after command - inserted before 'GetDataId'
meter.h line 27   

Warning : C2207W: inventing 'extern int GetDataId();'
meter.h line 27   

Error   : (Serious) C2292E: typedef name 'uint16' used in expression context
meter.h line 27   

Error   : C2285E: expected ')' or ',' - inserted ')' before 'DataId'
meter.h line 27   

Error   : (Serious) C2284E: expected ';' after command - inserted before 'DataId'
meter.h line 27   

Error   : C2456E: undeclared name, inventing 'extern int DataId'
meter.h line 27   

Error   : (Serious) C2292E: typedef name 'uint8' used in expression context
meter.h line 27   

Error   : C2456E: undeclared name, inventing 'extern int pBuf'
meter.h line 27   

Error   : (Serious) C2292E: typedef name 'uint16' used in expression context
meter.h line 27   

Error   : C2456E: undeclared name, inventing 'extern int pSize'
meter.h line 27   

Error   : (Serious) C2284E: expected ';' after command - inserted before ')'
meter.h line 27   

Error   : (Fatal) C3047U: Too many errors
meter.h line 27   

Error   : (Serious) C2857E: #include file "Meater.h" wouldn't open
485meter.cpp line 8   

Error   : (Serious) C2857E: #include file "485meater.h" wouldn't open
485meter.cpp line 9   

Error   : C2467E: missing type specification for 'DateTimeType' - 'int' assumed
485meter.cpp line 15   

Error   : C2285E: expected ';' or ',' - inserted ';' before 'SysDateTime'
485meter.cpp line 15   

Error   : C2225W: declaration lacks type/storage-class (assuming 'int'): 'SysDateTime'
485meter.cpp line 15   

Error   : (Serious) C2934E: duplicate definition of 'DateTimeType'
485meter.cpp line 16   

Error   : C2467E: missing type specification for 'DateTimeType' - 'int' assumed
485meter.cpp line 16   

Error   : C2285E: expected ';' or ',' - inserted ';' before 'gSysDateTime'
485meter.cpp line 16   

Error   : C2225W: declaration lacks type/storage-class (assuming 'int'): 'gSysDateTime'
485meter.cpp line 16   

Error   : (Serious) C2365E: class-name 'CMeter' not found
485meter.cpp line 24   

Error   : (Serious) C2365E: class-name 'CMeter' not found
485meter.cpp line 33   

Error   : C2456E: undeclared name, inventing 'extern int m_TimeBuf'
485meter.cpp line 36   

Error   : C3029E: '=': implicit cast of non-0 int to pointer
485meter.cpp line 36   

Error   : (Serious) C2947E: Illegal types for operands: '.'
485meter.cpp line 39   

Error   : (Serious) C2947E: Illegal types for operands: '.'
485meter.cpp line 40   

Error   : (Serious) C2947E: Illegal types for operands: '.'
485meter.cpp line 42   

Error   : (Serious) C2947E: Illegal types for operands: '.'
485meter.cpp line 43   

Error   : (Serious) C2947E: Illegal types for operands: '.'
485meter.cpp line 44   

Error   : (Serious) C2365E: class-name 'CMeter' not found
485meter.cpp line 48   

Error   : C2456E: undeclared name, inventing 'extern int m_MeterType'
485meter.cpp line 55   

Error   : C2456E: undeclared name, inventing 'extern int METERTYPE_485'
485meter.cpp line 55   

Error   : (Serious) C2947E: Illegal types for operands:
485meter.cpp line 55   

Error   : C2457E: undeclared name, inventing 'extern "C" int memcpy(...);'
485meter.cpp line 61   

Error   : (Serious) C2365E: class-name 'C485Meter' not found
485meter.cpp line 72   

Error   : C2218W: implicit 'int' return type for 'C485Meter' - 'void' intended?
485meter.cpp line 73   

Error   : (Serious) C2365E: class-name 'C485Meater' not found
485meter.cpp line 78   

Warning : C2870W: variable 'no' declared but not used
485meter.cpp line 80   

Error   : (Serious) C2365E: class-name 'C485Meater' not found
485meter.cpp line 83   

Error   : (Serious) C2934E: duplicate definition of 'GetDataId(unsigned short, unsigned char*, unsigned short*)'
485meter.cpp line 84   

Error   : C2457E: undeclared name, inventing 'extern "C" int printf(...);'
485meter.cpp line 85   

Warning : C2870W: variable 'pSize' declared but not used
485meter.cpp line 87   

Warning : C2870W: variable 'pBuf' declared but not used
485meter.cpp line 87   

Error   : (Serious) C2365E: class-name 'CMeater' not found
485meter.cpp line 89   

Warning : C2870W: variable 'pSize' declared but not used
485meter.cpp line 92   

Warning : C2870W: variable 'pBuf' declared but not used
485meter.cpp line 92   

Warning : C2870W: variable 'DataId' declared but not used
485meter.cpp line 92   

G:\电能表\GdPower\GdPower\485meter.cpp: 6 warnings, 13 errors, 17 serious errors

最新回复

话说我照着树上吵了一段简单的汇编都出现一大堆这样的错误,郁闷a啊~  详情 回复 发表于 2011-9-13 12:16
点赞 关注

回复
举报

74

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
关注ing,我在用C++定义类的时候也出现这样的错误。是不是ADS不支持C++类啊?还是哪个地方没设置好?
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
你应该用C的编译器编译C++造成的
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(中级)

4
 
话说我照着树上吵了一段简单的汇编都出现一大堆这样的错误,郁闷a啊~
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表