C# 如何打破公共 Void [关闭]

Posted

技术标签:

【中文标题】C# 如何打破公共 Void [关闭]【英文标题】:C# how to break public Void [closed] 【发布时间】:2014-03-15 08:32:46 【问题描述】:

我有一个这样的课程(这是一个例子)我需要从我需要的任何地方返回整个课程

Line1 :Public void test(bool start)
Line2 :
Line3 :  if (start) //do something;
Line4 :  else   // i use else for update with help other code and... forget it
Line5 :  
Line6 :   if (xxX)
Line7 :      if (sadasdas)
Line8 :          if(sdaeqwr324f)
Line9 :             if (Asdasdsa)
Line10:                  for (int a=0;a<6;a++)
Line11:                    
Line12:                     if (c[a]==1321334)
Line13:                       
Line14:                        t=c[1];
Line15:    /* <<< i neeeed  reset trace of test to first line of test  Line16 :>>>*/
Line17:                       
Line18:                     
Line19:     there are about 400 lines codes like Up at under of this line  
Line20:

我的目标是第 15 行 - 如果我在跟踪器跳转到第 17 行添加返回 - 我需要跟踪器跳转到第 2 行 对不起我的英语不好(我搜索找到解决它的原因,但我找不到任何东西)

【问题讨论】:

会不会是您要查找的“return”关键字?我不确定我是否理解这个问题 为什么要编辑我的问题???我不需要每个人都知道它 - 如果我想从第三个中断它,如果我只是打破当前的 if 并且我的跟踪转到下一个,我已经分配了 If 在 if 中 这太可怕了。重构你的代码。 tnx for comment 那为什么要这么做? 【参考方案1】:

要从函数中“中断”使用return:

public void test(bool start)

  if (start) //do something;
  else   // i use else for update with help other code and... forget it
  
     //do somethings (it is loop )
     pleas reset trace of test to first line of test
     return; // This ends the method, and returns to the caller
  

【讨论】:

Retorn 不是好方法,因为我有很多 if 在它大约 400 行代码 @ehsanwwe 代码行数应该不是问题 - 只需将 return 放在要结束执行的位置即可。 tnx 到评论:* 我测试它,只是跟踪器 terurn 最后一个如果例如 3 行向上,如果我想从第一行重置,我跳过 if at up(我需要全部返回) 我找到了一个使用 GOTO 的好方法

以上是关于C# 如何打破公共 Void [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

继承打破封装? [关闭]

如何将公共事件从 c# 转换为 vb.net [关闭]

C# 接口的非公共成员 [关闭]

C# winform 关闭窗体后在打开 如何让打开的窗体还是原窗体 且打开的窗体还是原状态

使用 asp.net 和 C# 集成 Paypal [关闭]

如何为父类构造函数提供值,其中父构造函数的参数比c#中静态void main的子类多? [关闭]