很久没有用过switch语句,这次一用就出问题了。
原来在case后面的语句中,如果定义或者声明了新的变量,需要用{}括起来,否则 就会出现编译错误:crosses initialization of 'XXXX'。不知道有多少人清楚这一点。
还有一点是switch是一种多路选择方式,选择器(也就是跟在switch后面括号里的东西)必须是一个在编译时能求得整数值的对象。因此,如果是想用字符串类型的对象作为选择器,那么麻烦您受累使用if-else吧。
很久没有用过switch语句,这次一用就出问题了。
原来在case后面的语句中,如果定义或者声明了新的变量,需要用{}括起来,否则 就会出现编译错误:crosses initialization of 'XXXX'。不知道有多少人清楚这一点。
还有一点是switch是一种多路选择方式,选择器(也就是跟在switch后面括号里的东西)必须是一个在编译时能求得整数值的对象。因此,如果是想用字符串类型的对象作为选择器,那么麻烦您受累使用if-else吧。