网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

C#中ref和out如何使用

这篇文章将为大家详细讲解有关C#中ref和out如何使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

成都创新互联公司2013年至今,先为永顺等服务建站,永顺等地企业,进行企业商务咨询服务。为永顺企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

在C#中,既可以通过值也可以通过引用传递参数。通过引用传递参数允许函数成员(方法、属性、索引器、运算符和构造函数)更改参数的值,并保持该更改。若要通过引用传递参数,请C#使用ref和out传递数组。为简单起见,本主题的示例中只使用了ref关键字。有关ref和out传递数组之间的差异的信息,请参见、C#使用ref和out传递数组。

值类型变量直接包含其数据,这与引用类型变量不同,后者包含对其数据的引用。因此,向方法传递值类型变量意味着向方法传递变量的一个副本。方法内发生的对参数的更改对该变量中存储的原始数据无任何影响。如果希望所调用的方法更改参数值,必须使用ref或out关键字通过引用传递该参数。为了简单起见,以下示例使用ref。

下面的示例演示通过值传递值类型参数。通过值将变量myInt传递给方法SquareIt。方法内发生的任何更改对变量的原始值无任何影响。

//PassingParams1.cs  usingSystem;  classPassingValByVal  ...{  staticvoidSquareIt(intx)  //Theparameterxispassedbyvalue.  //ChangestoxwillnotaffecttheoriginalvalueofmyInt.  ...{  x*=x;  Console.WriteLine("Thevalueinsidethemethod:{0}",x);  }  publicstaticvoidMain()  ...{  intmyInt=5;  Console.WriteLine("Thevaluebeforecallingthemethod:{0}",  myInt);  SquareIt(myInt);//PassingmyIntbyvalue.  Console.WriteLine("Thevalueaftercallingthemethod:{0}",  myInt);  }  }

当调用SquareIt时,myInt的内容被复制到参数x中,在方法内将该参数求平方。但在Main中,myInt的值在调用SquareIt方法之前和之后是相同的。实际上,方法内发生的更改只影响局部变量x。

下面的示例除使用ref关键字传递参数以外,其余与上面代码相同。参数的值在调用方法后发生更改。

//PassingParams2.cs  usingSystem;  classPassingValByRef  ...{  staticvoidSquareIt(refintx)  //Theparameterxispassedbyreference.  //ChangestoxwillaffecttheoriginalvalueofmyInt.  ...{  x*=x;  Console.WriteLine("Thevalueinsidethemethod:{0}",x);  }  publicstaticvoidMain()  ...{  intmyInt=5;  Console.WriteLine("Thevaluebeforecallingthemethod:{0}",  myInt);  SquareIt(refmyInt);//PassingmyIntbyreference.  Console.WriteLine("Thevalueaftercallingthemethod:{0}",  myInt);  }  }

关于C#中ref和out如何使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


网站题目:C#中ref和out如何使用
本文链接:http://bjjierui.cn/article/ggsosp.html

其他资讯