initialization of 'XXX' is skipped by 'case' label 原因及解决办法
今天遇到这个问题,在网上看了一会资料后找到原因,即:
switch 的 case 中不能定义变量,不然就会报错.可能是变量的初始化会因为有时候case条件不被执行而跳过.
后来想到三个解决的方法:
1:用if else 代替 switch 语句;
2:在case中用{}将代码括起来,这样在{}中就能定义变量了;
3:如果变量在各个case中都要用的话,就把变量定义在switch外面吧;
摘自 doublechen_it的专栏

本文探讨了在switch-case结构中直接定义变量导致的编译错误,并提供了三种实用的解决方案,包括使用if-else替代、将case内的代码置于{}
1132

被折叠的 条评论
为什么被折叠?



