1

这是类(放松,这只是一个示例,不用于具体使用):

public class Sample
{
    public Sample()
    {
    }

    public string Size
    {
        get
        {
            switch (index)
            {
                case 0: return 100;
                        break;
                case 1: return 500;
                        break;
                case 2: return 1000;
                        break;
                ...
            }
        }
    }
}

我在 break 关键字上收到“检测到无法访问的代码”错误。甚至可以在类或类成员函数中编写 switch 语句吗?或者,我是否坚持使用 if-else 块?

根据下面的反馈,我发现我犯了一个愚蠢的错误,在休息之前返回

4

3 回答 3

7

“无法访问的代码”警告是因为您的break语句紧跟在return语句之后。因此,break永远不会执行。

于 2013-01-30T21:49:19.080 回答
3

您在 上获得了无法访问的代码,break因为该代码无法访问。return确保了这一点。您可以删除这些break语句,一切都应该正常。

您可以通过以下两种方式之一重写开关:

switch(index)
{
  case 0: return 100;
  case 1: return 500;
  case 2: return 1000;
}

或者

int value = 0;
switch(index)
{
   case 0:
     value = 100;
     break;
   case 1:
     value = 500;
     break;
   case 2:
     value = 1000;
     break;
}
return value;
于 2013-01-30T21:52:46.153 回答
1

您可以使用变量来保存您的号码,切换后,您返回变量。

public class Sample
{
    public Sample()
    {

    }

    public string Size
    {
        get
        {
            int num=0;
            switch (index)
            {
                case 0: num= 100;
                    break;
                case 1: num= 500;
                    break;
                case 2: num= 1000;
                    break;
            }
            return num;
        }
    }
}
于 2013-01-30T21:50:45.953 回答