作者:广东在线游戏网日期:
返回目录:游戏资讯
使用的都不算多,至少我就很少用,可能和个人习惯有关吧,
Switch和select case差不多,举例说明一下,如根据城市名称选择语言:
Matchup = Switch(CityName = "London", "English", CityName _
= "Rome", "Italian", CityName = "Paris", "French")
Select Case CityName
Case "London"
Matchup = "Englist"
Case "Rome"
Matchup = "Italian"
Case "Paris"
Matchup = "Fench"
End Select
很明显,select case层次分明,看起来更易读(虽然代码看起来多一些),特别是需要嵌套时更加明确
而choose和使用数组的效果也差不多,如
Matchup = Choose(1, "English", "Italian", "French")
和下面数组的效果是一样的
dim Grp()
grp=Split("English, Italian, French",",")
Matchup = Grp(0)
如果有一处代码需要Matchup的话,两者皆可,但如果需要多处调用或元素较多的话,数组要比Choose函数灵活且代码更清晰易读。636f7079e799bee5baa6e997aee7ad94339
switch (表达式或属性){
case 值1 : 语句1
break;
case 值2 : 语句2
break;
...
default : 值n
break;
}
从表达百式或属性值等于某个case语句后的值开始,它下方度的所有语句都会一直运行,直到遇到一个break为止。随后,switch语句将结束,程序从switch结束大括号之后的第一个语句继续执行,并忽略其他case。
假如回任何一个case语句的值都不等于表达式或属性的值,就运行可选标签default之下的语句。
假如表达式或属性的值和任何一个case标签都不匹配,同时没有发答现一个default标签,程序会跳过整个switch语句,从它的结束大括号之后的第一个语句继续执行。
VB 里的 select 语句和 C++ 里的 switch 语句相同,不过 每一个"Case"结束时无需 <break> 。
相对于 if 语句而言,switch 语句可以更方便地应用于多个分支的控制流程。C89 指明,一个 switch 语句最少可以支持 257 个 case 语句,而 C99 则要求至少支持 1023 个 case 语句。然而,在实际开发环境中,为了程序的可读性与执行效率,应该尽量减少 switch 语句中的 case 语句。
除此之外,switch 语句与 if 语句不同的是,switch 语句只能够测试是否相等,因此,case 语句后面只能是整型或字符型的常量或常量表达式;而在 if 语句中还能够测试关系与逻辑表达式。
扩展资料
在 switch 语句中,default 语句主要用于检查默认情况,或者处理错误情况,如下面的示例代码所示:
default:
printf("error\n");
break;
如果在 switch 语句中去掉 default 语句,那么 switch 语句将失去对默认情况与错误情况的处理能力。所以,奉劝大家636f7079e799bee5baa6365不要偷懒,老老实实把每一种情况都用 case 语句来完成,而把真正对默认情况的处理交给 default 语句来完成。即使程序真的不需要 default 处理,也应该保留此语句:
default:
break;
这样做并非画蛇添足,可以避免令人误以为是忘记了 default 处理。