上一篇:C#中方法参数的四种类型 >>
switch语句的“不准遍历”
C和C++语言允许switch语句中case标签后不出现break语句从而可以继续执行下面case后的语句。但是这往往由于程序员忘记写break语句而成为一个难以发现的漏洞,所以C#不允许这样,它要求每个标签项后使用break语句或跳转语句goto,即不允许从一个case自动遍历到其他case,否则编译时报错,即使是default语句后也不例外。
这个特定决定了三个特点:
a)我们可以任意排列switch语句中的case项而不会影响switch语句的功能。
b)如果要像c/c++那样在执行完后继续遍历其他的语句,只要在case语句后加上以下两条跳转语句中的一条即可:goto case label;goto default。
3)除了goto外,throw和return也可以。
C#switch语句与C/C++另一个不同点是C#同VB一样把字符串常量当作常量表达式来使用,但C/C++却不支持。所以在C#中,case “OK”:这样的形式也是支持的。
下一篇:C#中的checked、unchecked操作符 >>
相关文章:
- · C#,深入浅出全接触(三)
- · C#学习笔记(4)
- · C#学习笔记(3)
- · C#学习笔记(2)
- · C#,深入浅出全接触(二)
- · C#,深入浅出全接触(一)
- · c#里面的namespace基础(二)
- · c#里面的namespace基础(一)
- · C#正则表达式应用范例
- · SUNWEN教程之----C#进阶(十一)
- · SUNWEN教程之----C#进阶(十)
- · SUNWEN教程之----C#进阶(九)
- · SUNWEN教程之----C#进阶(八)
- · SUNWEN教程之----C#进阶(八)
- · SUNWEN教程之----C#进阶(七)
- · SUNWEN教程之----C#进阶(六)
- · SUNWEN教程之----C#进阶(五)
- · SUNWEN教程之----C#进阶(三)
- · SUNWEN教程之----C#进阶(二)
- · SUNWEN教程之----C#进阶(一)
- · C#的前途如何?
- · 关于两代语言.C/C++,java/c#
- · Beginner with c# 2
- · Beginner with c# 3
- · Beginner with C# 5
- · Beginner with C# 6
- · Beginner with C# 7
- · C#与JAVA之比较(1)
- · C#与JAVA之比较(2)
- · C#与JAVA之比较(3)
- · C#与JAVA之比较(4)
- · 利齿C sharp代替C++
- · 两个获取http页面的c#函数
- · 两个获取http页面的c#函数
- · C#语言初级入门(1)
- · C#语言初级入门(2)
- · C#, 程序员的新工具
- · 一种新的开发语言C#
