内容简介:一般情况下,如果一个方法声明了返回值,但是实际上在编写代码的时候没有返回,那么这个时候会出现编译错误。然而,如果方法内部出现了永远也不会退出的死循环,那么这个时候就不会出现编译错误。请看下面这一段代码,
一般情况下,如果一个方法声明了返回值,但是实际上在编写代码的时候没有返回,那么这个时候会出现编译错误。
然而,如果方法内部出现了永远也不会退出的死循环,那么这个时候就不会出现编译错误。
请看下面这一段代码, RunAndNeverReturns
方法声明了返回值 int
但实际上方法内部没有返回。这段代码是可以编译通过而且可以正常运行的。
namespace Walterlv.Demo
{
class Program
{
static void Main(string[] args)
{
RunAndNeverReturns();
}
private static int RunAndNeverReturns()
{
while (true)
{
Thread.Sleep(1000);
Console.WriteLine("Walterlv will always appear.");
}
// 注意看,这个方法其实没有返回。
}
}
}
如果观察其 IL 代码,会发现此方法的 IL 代码里面是没有 ret
语句的。而其他正常的方法,即便返回值是 void
,也是有 ret
语句的。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
谷歌时代的柏拉图
[美] 丽贝卡·戈尔茨坦 / 李鹏程 / 中信出版集团·新思文化 / 2017-12-10 / 69.00元
我愿意用我所有的科技去换取和苏格拉底相处的一个下午。 ——史蒂夫•乔布斯 谷歌时代,科技昌明,众声喧哗,哲学提出的许多问题,科学似乎都已经给出了答案。若是如此,为什么我们今天还需要哲学?这个由古希腊城邦时代的哲人苏格拉底和柏拉图开创的学科,真的过时了吗? 已经2400岁 的柏拉图对此有话要说。哲学家兼小说家、美国国家人文奖章获得者戈尔茨坦史海钩沉,从经典著作中复活了柏拉图,让他来......一起来看看 《谷歌时代的柏拉图》 这本书的介绍吧!