Csharp/C#教程:C#中out与ref的区别实例解析分享

本文实例讲述了C#中Out与Ref的区别,可以加深C#程序设计人员对Out和Ref用法的理解,具体分析如下:

一、区别分析:

Out和Ref作为参数传递到方法体中,所传递的都是引用地址,两者在操作上本身没有区别。

但Out传递到方法体时,参数会清空,这意味着在方法体内使用Out参数前必须赋值。

而Ref传递到方法体时,其参数也是一起被传递进来,所以作为Ref参数传递,方法体中可以不对其参数赋值。

二、实例代码如下:

classProgram { /*ref是有进有出,out是只出不进*/ staticvoidMain(string[]args) { /*作为Out参数传递传递前可以不初始化*/ stringoutString="ThisistheoutStringvalue"; Console.WriteLine(outString); outMethod(outoutString); Console.WriteLine(outString); /*作为Ref参数传递传递前必须初始化*/ stringrefString="ThisistherefStringvalue"; Console.WriteLine(refString); refMethod(refrefString); Console.WriteLine(refString); Console.ReadLine(); } staticbooloutMethod(outstringstr) { /*作为Out参数传递传递到方法体后参数被清空*/ //Console.WriteLine(str);Useofunassignedoutparameter'str' /*作为Out参数传递值必须在方法体内赋值*/ /*作为Out参数传递返回前值必须初始化*/ str="ThisisthenewoutStringvalue"; returntrue; } staticboolrefMethod(refstringstr) { Console.WriteLine(str); /*作为Ref参数传递返回前值可以不初始化*/ returntrue; } }

希望本文所述实例对大家C#程序设计有一定的帮助。

您可能感兴趣的文章:C#中ref和out的区别浅析C#中按引用传递与按值传递的区别,以及ref与out关键字的用法详解一看就懂:图解C#中的值类型、引用类型、栈、堆、ref、outC#编程中使用ref和out关键字来传递数组对象的用法c#方法中调用参数的值传递方式和引用传递方式以及ref与out的区别深入解析详解C#中的out和ref解析C#中的ref和out参数C#方法中参数ref和out详解详解C#中三个关键字params,Ref,outc#基础系列之ref和out的深入理解

标签: ef ut ref

全面解析设计模式中的建造者模式及相关C++实现

C++设计模式编程中Facade外观模式的使用实例解析

上述就是C#学习教程:C#中out与ref的区别实例解析分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/905689.html

(0)
上一篇 2021年10月23日
下一篇 2021年10月23日

精彩推荐