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

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