日期:2014-05-18  浏览次数:21302 次

在C#中void函数还要不要return;?
首先:像这样的函数
int hanshu()
{
  return xx;//肯定是要return的
}
但是:
static void Main(string[] args)
{
  //这样的函数我习惯不用什么return;就算在特别时候也用的很勉强.  
}
如果是自己定义的子函数或事件函数.
void zidingyi(int k)
{
}
private void btn_Str_Click(object sender, EventArgs e)
{
}
这样的我只有需要提前退出函数(方法)时才用return;的.
----------------------------------------------------------
反编译*.exe后发现原程序添加了很多this.但是没加什么return;是不是C#里不用管什么返回到调用处的下行之类的东西啊?

   


------解决方案--------------------
不需要的。
------解决方案--------------------
有些东西不知道也没关系,怎么实现并不重要
------解决方案--------------------

------解决方案--------------------
不需要的。
------解决方案--------------------
真正的返回是在你写的函数外面
------解决方案--------------------
不需要,如果你执行到某一循环或步骤时,下面的不想执行了,可以return掉.
------解决方案--------------------
不用

其实到了 “}” 的时候,系统会自动插入 return 的
------解决方案--------------------
不是必要,你要return也可以;
------解决方案--------------------
所有的方法都是要return的,void可以省略return,省略的话就默认在方法体中最后一个语句执行后return,当然return的位置时随自己定的
如:
C# code

public void Test(string[] array)
{
    foreach(string s in array)
    {
        if(s.Contains("hello")
        {
             Console.WriteLine("Yes");//如果有包括hello的项,输出yes,并退出方法
             return;
        }
    }
    Console.WriteLine("No");//如果没有包括hello的项,输出no,这里就可以省略return了
}

------解决方案--------------------
随你老高兴了
------解决方案--------------------
如果你完全执行的话就不用了,比如运行一半返回,就用下return,如中间判断,抛出messagebox后面又不要执行了,就可以加上return
------解决方案--------------------
探讨
所有的方法都是要return的,void可以省略return,

------解决方案--------------------
探讨
不是必要,你要return也可以;

------解决方案--------------------
可要可不要,不要就执行完自然返回.
------解决方案--------------------
探讨
如果你完全执行的话就不用了,比如运行一半返回,就用下return,如中间判断,抛出messagebox后面又不要执行了,就可以加上return

------解决方案--------------------
你不写的话, 编译器会自动帮你添加ret.

并且, 编译器还会自动帮你添加一些初始化代码,
------解决方案--------------------
我觉得可用可不用,这视你的编程习惯而言吧。void表示的是一个无返回值的函数,但在有些情况要完成一些set,或者get的功能时就有可能用到return.