当前位置: 首页 > news >正文

内网做网站福建省新特建设工程有限公司网站

内网做网站,福建省新特建设工程有限公司网站,免费图片制作网站模板,自适应 网站开发ref 和out 关键字 通过对CLR的学习#xff0c;我们可以知道#xff0c;CLR默认所有方法参数都是传值的。对于引用类型的对象#xff0c;传递的是对象的引用#xff08;指向对象的指针#xff09;#xff0c;被调用者拥有该对象的引用的拷贝#xff0c;能够修改对象…      ref 和out 关键字      通过对CLR的学习我们可以知道CLR默认所有方法参数都是传值的。对于引用类型的对象传递的是对象的引用指向对象的指针被调用者拥有该对象的引用的拷贝能够修改对象改变对象的值而对于值类型的实例来说传递给的是实例的一个副本被调用者对该副本所做的修改不会影响调用者中的实例。   上面使用的是按传值方式来传递参数。接下来讲按传引用的方式来传递参数。   C# 中提供了 ref 和 out 关键字以便参数按引用地址传递对值类型使用ref和out为被调用者分配一个托管指针该指针指向调用者的变量对于引用类型的话为被调用者分配一个托管指针该指针指向调用者中的对象。      补充一下代码希望能够更加清晰点    1 using System;2 using System.Collections.Generic;3 using System.Linq;4 using System.Text;5 using System.Threading.Tasks;6 7 namespace MyExamples.App8 {9 class Book { 10 11 public String Name; 12 13 /// summary 14 /// 按传值方式传递 15 /// /summary 16 /// param namebook/param 17 /// param namecount/param 18 public void GetInfo(Book book, int count) 19 { 20 book.Name Eric; 21 count 15; 22 } 23 24 /// summary 25 /// 使用ref关键字按传引用传递 26 /// /summary 27 /// param namebook/param 28 /// param namecount/param 29 public void GetResultInfo(ref Book book, ref int count) { 30 book new Book() 31 { 32 Name jerry 33 }; 34 count 10; 35 } 36 37 /// summary 38 /// 输出结果 39 /// /summary 40 /// param namebook/param 41 /// param namecount/param 42 public void GetResult(Book book, int count) 43 { 44 Console.WriteLine(books Name is {0},Count is {1}, book.Name, count); 45 } 46 47 } 48 49 class Program 50 { 51 static void Main(string[] args) 52 { 53 Book book new Book() 54 { 55 Name jonish 56 }; 57 58 int Count 5; 59 60 book.GetInfo(book, Count); 61 book.GetResult(book, Count); 62 63 book.GetResultInfo(ref book, ref Count); 64 book.GetResult(book, Count); 65 } 66 } 67 } View Code      运行结果    ------------------------------------------------------------------------------------------------------------------------------------------------------ ref 和 out相同点 1.使参数按引用传递注意这里的“引用”与我们通常说的“对象引用”不一样可以形象的理解为类似于C/C中传指针地址。 2.效果是被调用方对该参数的修改会反映到该变量中即当调用结束返回时调用方看到的是修改过的值。 3.方法定义和调用方法都必须显式使用 ref 或者 out 关键字 ref 和 out不同点 1。传递到 ref 的参数必须最先初始化即由调用方显式初始化。 2。传递到 out 的参数在传递之前不需要显式初始化但需要调用方在方法返回之前必须对其赋值。   方法重载时需要注意的地方 1。ref 和 out 关键字在运行时的处理方式不同但在编译时的处理方式相同。因此如果一个方法采用 ref 参数而另一个方法采用 out 参数则无法重载这两个方法。 2。但是如果一个方法采用 ref 或 out 参数而另一个方法不采用这两类参数则可以进行重载。   相关MSDN学习资料: http://msdn.microsoft.com/zh-cn/library/14akc2c7(vvs.80).aspx http://msdn.microsoft.com/zh-cn/library/t3c3bfhx(vvs.80).aspx   转载于:https://www.cnblogs.com/Jonish/p/2317562.html
http://wiki.neutronadmin.com/news/413335/

相关文章:

  • 教做蛋糕的网站学习软件编程
  • 比较好的高端网站制作公司定陶菏泽网站建设
  • 外贸网站建设内容包括wordpress附件扩展格式
  • 想做网站找什么公司做信息网站怎么样
  • 做空间的网站logo设计软件app
  • 戴尔网站建设成功的关键怎么做收费网站
  • 怎么开一个做网站的工作室局域网访问wordpress
  • 网站工作和网站建设管理工作东莞沙田门户网站建设
  • 商户网站唯一订单号邢台做移动网站价格
  • 水泥公司网站建设做旅游的网站的需求
  • php网站怎么做缓存信息门户平台
  • 深圳高端做网站公司国内优秀网站欣赏
  • vs做的网站图片显示不了长沙专业网站建设怎么做
  • 何为门户网站网站如何不被收录
  • 杭州首传网站建设公司怎么样阿凡达网站建设网
  • 苏州网站优化哪家好深圳罗湖做网站
  • 建设网站里的会员系统百度云wordpress教程视频
  • mysql 网站空间贵州建设网站
  • 网站建设公司的性质软件项目管理制度
  • 国内f型网页布局的网站pk10代码网站开发
  • 网站分页符怎么做建设一个国外服务器的网站
  • 培训网站平台怎样做网站自身维护
  • 哪里有免费的网站推广wordpress建站社区
  • 深圳网站制作平台博客网
  • 做搬家广告哪家网站有优wordpress 更新文章
  • 网站建设课程学习wordpress 插件开启
  • 做原油的网站深圳百度推广公司
  • 重庆学校网站推广青岛商网站建设
  • 网站设计方案大全自学室内装修设计教程
  • 案例查询网站软件著作权查询入口