浅谈 C# ref 和 out 的使用方法
2017-06-05 14:47
441 查看
有过C#基础知识的都应该清楚Ref和Out的使用方法,因此本人的这随笔主要是针对刚入门的新手而言的,大师请绕道而行;
开始主题:
C#有两种参数传递方式:传值和引用,传值就是变量的值,而引用则是传递的变量的地址;
本文中说的Ref和Out都是引用传递,Ref的重点是把值传给调用方法,Out则是得到调用方法的值,类似于有返回类型的方法返回的值;
在使用两者时一定要注意一下两点,否则编译出现错误
a) ref 变量使用前要先声明同时要赋值 a=20;
b)方法调用参数要加上相应的关键字 ref or out;
static void main()
{
int a = 20;
int b = 30;
int c;
//把"a","b"引用传进去,虽然此方法没有返回值,但是两者值已经调换
SwapMethod(ref a, ref b);
Console.WriteLine(" After Swap a is {0},b is {1} ",a,b);
//"out"可以理解成传进去的引用"c"经过一系列的处理,结果就是值也发生了变化
OutTest(out c);
Console.WriteLine("The out value is {0}.",c);
}
static void SwapMethod(ref int a,ref int b)
{
int tem;
tem = a;
a = b;
b = tem;
}
static void OutTest(out int a)
{
a = 10 * 10;
}
输出:
After Swap A is 30,B is 20
The out value is 100.
开始主题:
C#有两种参数传递方式:传值和引用,传值就是变量的值,而引用则是传递的变量的地址;
本文中说的Ref和Out都是引用传递,Ref的重点是把值传给调用方法,Out则是得到调用方法的值,类似于有返回类型的方法返回的值;
在使用两者时一定要注意一下两点,否则编译出现错误
a) ref 变量使用前要先声明同时要赋值 a=20;
b)方法调用参数要加上相应的关键字 ref or out;
static void main()
{
int a = 20;
int b = 30;
int c;
//把"a","b"引用传进去,虽然此方法没有返回值,但是两者值已经调换
SwapMethod(ref a, ref b);
Console.WriteLine(" After Swap a is {0},b is {1} ",a,b);
//"out"可以理解成传进去的引用"c"经过一系列的处理,结果就是值也发生了变化
OutTest(out c);
Console.WriteLine("The out value is {0}.",c);
}
static void SwapMethod(ref int a,ref int b)
{
int tem;
tem = a;
a = b;
b = tem;
}
static void OutTest(out int a)
{
a = 10 * 10;
}
输出:
After Swap A is 30,B is 20
The out value is 100.
相关文章推荐
- C#中方法中 ref 和 out的使用
- C# 中的四种参数的使用方法(一般参数,ref 参数,out参数,参数数列)
- C#方法参数传递-同时使用ref和out关键字
- C#方法参数传递-同时使用ref和out关键字
- 史上最全的CSS hack方式一览 jQuery 图片轮播的代码分离 JQuery中的动画 C#中Trim()、TrimStart()、TrimEnd()的用法 marquee 标签的使用详情 js鼠标事件 js添加遮罩层 页面上通过地址栏传值时出现乱码的两种解决方法 ref和out的区别在c#中 总结
- C#中使用ref和out传递数组的方法
- C# 中的 ref 和 out 的意义和使用方法
- C# 中ref out 使用方法及注意事项
- 在 C# 异步方法中使用 out/ref 参数机制
- C#中的ref和out的意义和使用方法
- 用MSIL剥开C#的外衣(一):方法参数ref、out、params和lock、for和foreach关键字
- C# Error CS1628: 不能在匿名方法、lambda 表达式或查询表达式中使用 ref 或 out 参数
- C#中ref和out的使用小结
- C#中ref和out的使用小结
- c#学习体会:使用 ref 和 out 传递数组
- c#方法中调用参数的值传递方式和引用传递方式,以及ref与out的区别
- 使用 ref 和 out 传递数组(C# 编程指南)
- C#中ref和out的使用小结
- 【C#基础】方法及其调用、构造方法、out与ref参数及其返回值、方法重载、静态方法等简单介绍