通过一段代码说明C#中rel与out的使用区别
2015-01-28 17:17
357 查看
using System; 2 3public partial class testref : System.Web.UI.Page 4{ 5 static void outTest(out int x, out int y) 6 {//离开这个函数前,必须对x和y赋值,否则会报错。 7 //y = x; 8 //上面这行会报错,因为使用了out后,x和y都清空了,需要重新赋值,即使调用函数前赋过值也不行 9 x = 1; 10 y = 2; 11 } 12 static void refTest(ref int x, ref int y) 13 { 14 x =x+ 1; 15 y = y+1; 16 } 17 18 protected void Page_Load(object sender, EventArgs e) 19 { 20 //out test 21 int a, b; 22 //out使用前,变量可以不赋值 23 outTest(out a, out b); 24 Response.Write("a={0};b={1}"+a+b); 25 int c = 11, d = 22; 26 outTest(out c, out d); 27 Response.Write("c={0};d={1}"+c+d); 28 29 //ref test 30 int m, n; 31 //refTest(ref m, ref n); 32 //上面这行会出错,ref使用前,变量必须赋值 33 34 int o = 11, p = 22; 35 refTest(ref o, ref p); 36 Response.Write("o={11};p={22}" + o + p); 37 38 39 } 40}
1.ref 有进有出,使用前需实例化
2.out只出不进(即便已经实例化参数,调用函数时,依旧为null),
相关文章推荐
- 通过一段代码说明C#中rel与out的使用区别
- 史上最全的CSS hack方式一览 jQuery 图片轮播的代码分离 JQuery中的动画 C#中Trim()、TrimStart()、TrimEnd()的用法 marquee 标签的使用详情 js鼠标事件 js添加遮罩层 页面上通过地址栏传值时出现乱码的两种解决方法 ref和out的区别在c#中 总结
- 【asp.net 】使用js结合hidden控件实现在后台运行一段程序后提示确认,确认通过后继续执行后台代码~~~
- c#中out和ref的使用区别
- C# ref与out关键字的使用与区别
- 在C#中使用C++的DLL,并且在DLL中包含有opencv的代码,通过“障眼法”操作
- 通过一段代码简单说js中的this的使用
- c#中out和ref的使用区别 [转]
- 通过代码学习C#&.NET——委托使用(线程、任务)
- 分享一段C#使用指针的代码!! 马赛克效果
- 通过代码学习C#&.NET——委托使用(正则表达式替换)
- A类只能通过B类的方法实例化,不能直接使用new,即内部类~代码一段
- c#中out和ref的使用区别
- C#hashtable使用说明 以及 Hashtable和HashMap的区别【总结性】
- C#中out和ref的使用区别
- cocos2d-x系列笔记(9.1)---浅谈cocos2d-x使用函数指针实现委托(上)---通过c#代码理解委托
- 通过代码学习C#&.NET——委托使用(通用类设计)
- 举例说明在C#语言ref和out的区别
- C#hashtable使用说明 以及 Hashtable和HashMap的区别【总结性】
- 通过一段代码简单说js中的this的使用