C#输出参数vs返回值
发布时间:2020-12-15 03:47:49 所属栏目:百科 来源:网络整理
导读:所以我是C#的新手,我很难理解.而不是从函数返回一些东西 using System;class ReturnTest{ static double CalculateArea() { double r=5; double area = r * r * Math.PI; return area; } static void Main() { double output = CalculateArea(); Console.Wri
所以我是C#的新手,我很难理解.而不是从函数返回一些东西
using System; class ReturnTest { static double CalculateArea() { double r=5; double area = r * r * Math.PI; return area; } static void Main() { double output = CalculateArea(); Console.WriteLine("The area is {0:0.00}",output); } } 与此相比 using System; class ReturnTest { static void CalculateArea(out double r) { r=5; r= r * r * Math.PI; } static void Main() { double radius; CalculateArea(out radius); Console.WriteLine("The area is {0:0.00}",radius ); Console.ReadLine(); } } 第一个是我一般来做的.有没有理由为什么我可能想使用而不是只是一个return语句?我明白ref允许进行双向通信,而且我通常不要使用ref,除非该函数正在使用我发送的变量做某事. 然而,out和return语句之间有区别,如上所示?语法上有理由赞成一个或另一个? 解决方法
对于结果而言,使用out而不是返回的好方法是可以在某些API中看到的Try模式,例如Int32.TryParse(…).在这种模式下,返回值用于表示操作的成功或失败(与异常相反),out参数用于返回实际结果.
Int32.Parse的优点之一是速度快,因为避免了异常.另一个问题已经提出了一些基准:Parsing Performance (If,TryParse,Try-Catch) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |