switch 语句:error : crosses initialization of 'xxx' and jump to case label [-fpermissive]

版权声明:本文为博主原创文章,欢迎转载,转载请注明出处,向分享精神致敬。 https://blog.csdn.net/qilvmilv/article/details/50507260
1.错误
		case Hearting:
			baseDG heartReply;
			heartReply.set_cmd(HeartReply);
			heartReply.set_tagid(mesg->tagid());
			int len;
			len = heartReply.ByteSize();
			char *p = (char*)malloc(len);//报错:crosses initialization of 'xxx'
			heartReply.SerializePartialToArray(p,len);
			SendDataSocket(p,len);
			free(p);
			break;
		case HeartReply://报错:jump to case label [-fpermissive]
			break;
		case OnModeChanged:
			break;
		case ModeException:
			break;
		case AudioStream:

2.修改后:
		case Hearting:{
				baseDG heartReply;
				heartReply.set_cmd(HeartReply);
				heartReply.set_tagid(mesg->tagid());
				int len;
				len = heartReply.ByteSize();
				char *p;//先声明,后定义
				p = (char*)malloc(len);
				heartReply.SerializePartialToArray(p,len);
				SendDataSocket(p,len);
				free(p);
			}//记住大括号
			break;
		case HeartReply:
			break;
		case OnModeChanged:
			break;
		case ModeException:
			break;
		case AudioStream:


猜你喜欢

转载自blog.csdn.net/qilvmilv/article/details/50507260