initialization of 'XXX' is skipped by 'case' label 原因及解决办法

今天遇到这个问题,在网上看了一会资料后找到原因,即:

switch 的 case 中不能定义变量,不然就会报错.可能是变量的初始化会因为有时候case条件不被执行而跳过.

后来想到三个解决的方法:

1:用if else 代替 switch 语句;

2:在case中用{}将代码括起来,这样在{}中就能定义变量了;

3:如果变量在各个case中都要用的话,就把变量定义在switch外面吧;

initialization of 'XXX' is skipped by 'case' label 原因及解决办法

时间: 2024-10-21 07:27:31

initialization of 'XXX' is skipped by 'case' label 原因及解决办法的相关文章

[转]"error while loading shared libraries: xxx.so.x" 错误的原因和解决办法

[转]"error while loading shared libraries: xxx.so.x" 错误的原因和解决办法 http://blog.csdn.net/sahusoft/article/details/7388617 一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如: tmux: error while loading shared libraries: libevent-1.4.so.2: cannot open shared obje

Android开发中java.lang.RuntimeException: Unable to start activity ComponentInfo{xxx}: java.lang.NullPointerException 错误的集中原因及解决办法

上面那个问题刚解决,就又来一个问题~~~~ 错误信息字符串:java.lang.RuntimeException: Unable to start activity ComponentInfo{...}: java.lang.NullPointerException 网上有不少解决办法 一般都会在Activity  onCreate()方法里的setContentView(XXX)发生此错误,网上查阅了很多原因,大概有四种重要可能的原因: 原因一:xxx的错误,若为R.layout.main 

No such table xxx错误的原因、解决办法:

凡是出现:  No such table xxx错误. 一.关键字与插入数据时的关键字不匹配: 二.数据模型引用错误: 总结:建立数据表时肯定用问题,静下心来细细检查,肯定会发现疏忽的地方. 记得调试时,有问题解决不掉时,重启eclipse,有可能错误就消失了,没办法--就是那莫怪!

label点击事件重复调用原因与解决办法

label>input结构,再给label绑定点击事件,会导致点击时执行2次点击事件的现象.比如下面的代码: <div class="radio"> <label> <input type="radio" ng-click="func($event)" id="ue" > 编辑器模式 </label> </div> <div class="rad

error while loading shared libraries: xxx.so.x&quot;错误的原因和解决办法

一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如: tmux: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory 原因一般有两个, 一个是操作系统里确实没有包含该共享库(lib*.so.*文件)或者共享库版本不对, 遇到这种情况那就去网上下载并安装上即可. 另外一个原因就是已经安装了该共

error while loading shared libraries: xxx.so.x&quot; 错误的原因和解决办法

今天在执行一个protobuf程序时,提示error while loading shared libraries: libprotobuf.so.8: cannot open shared object file: No such file or directory错误.google了一下,是由于找不到lib这个文件. 解决办法: 一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如: tmux: error while loading shared librari

error: jump to case label与crosses initialization of&quot;xx&quot;编译错误

前言 我过去使用vs下的cl编译程序时,从没遇到过此类错误,今天在Qt 5.3的MINGW版本下编译程序时,却出现 error: jump to case label与crosses initialization of"xx"编译错误. 解决方案 在switch语句的内部(包括case语句的内部)都不能声明变量,如需要声明,请在switch语句外面.

goto语句引起的crosses initialization of XXX

1. 背景 goto语句虽然目前已经不提倡使用,但是用起来还是很方便,尤其是老代码中见的比较多. 在改动有goto语句的老代码时需要特别注意,是否跳过来资源的释放.有用变量的初始化等等. 很久之前写c程序时,有些提交系统要求变量必须在函数开始地方全部申明,最近遇到了"crosses initialization of XXX"知道为什么了.就是因为有可能跳过变量的声明. 2. 代码例子 例子1: 1 #include <iostream> 2 class Test{ 3 p

switch case is in protected scope解决办法

出现错误:switch case is in protected scope 一半情况下这种写法: switch (XXX) { case XXX: XXXX break; default: break; } 解决办法: switch (XXX) { case XXX: { XXXX } break; default: break; } 每个case后加上一个大括号