打印本文 打印本文  关闭窗口 关闭窗口  
C++编程人员容易犯的10个C#错误9
作者:佚名  文章来源:不详  点击数  更新时间:2008/4/18 14:40:22  文章录入:杜斌  责任编辑:杜斌

错误9:switch语句中会有些语句执行不到

在C#中,如果一个switch语句执行了一些操作,则程序就可能不能执行到下一个语句。因此,尽管下面的代码在C++中是合法的,但在C#中却不合法:

switch (i)
{
case 4:
CallFuncOne();
case 5: // 错误,不会执行到这里
CallSomeFunc();
}


要实现上面代码的目的,需要使用一个goto语句:

switch (i)
{
case 4:
CallFuncOne();
goto case 5;
case 5:
CallSomeFunc();
}


如果case语句不执行任何代码,则所有的语句都会被执行。如下面的代码:

switch (i)
{
case 4: // 能执行到
case 5: // 能执行到
case 6:
CallSomeFunc();
}

打印本文 打印本文  关闭窗口 关闭窗口