我定义了这么几个枚举类型:
namespace scf { typedef enum { Response = 1, Request, Exception, Config, Handclasp, RebootException } SDPType; typedef enum { JSON = 1, JAVABinary, XML, SCFBinary } SerializeType; typedef enum { Java = 1, Dotnet, C } PlatformType; typedef enum { UnCompress, SevenZip } CompressType; //......... }这样使用:
Protocol::Protocol(int sessionId, char serviceId, SDPType sdpType, void* sdpEntity, const char *sdpEntityType) { this->sessionId = sessionId; this->serviceId = serviceId; this->sdpType = sdpType; this->sdpEntity = sdpEntity; this->sdpEntityType = (char*) sdpEntityType; this->userData = NULL; this->serializeType = SCFBinary; // 这里 this->compressType = UnCompress; //这里 this->platformType = C; //这里 }以上使用正常。现在我想给SerializeType这个枚举添加一个语素,如:
typedef enum { JSON = 1, JAVABinary, XML, SCFBinary, SCFV2 } SerializeType;则添加之后,使用时报错, 说Uncompress 和C 没有定义,不知道是什么原因。求指教...
我是用eclipse在linux写的c++程序
你这样定义枚举不太好吧.可以这样试下:
typedef enum { |
PT_Java=0, PT_Dotnet, PT_C, |
}PlatformType; |
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。