C#中的两个关键字ref和out
来源:互联网 发布:手机软件源码 编辑:程序博客网 时间:2024/05/17 20:32
今天简要的说下C#中的两个关键字,ref和out关键字,其实在之前学习java的时候,还真是没接触过这两个东西,刚开始看到,还觉得,C#怎么就那么多关键字,不过了解后,还是蛮简单的,就是引用的方式来传递参数。
1、ref关键字
当值类型和string类型参数要按引用方式传参时,可以通过ref关键字来声明引用参数,无论是形参还是实参,只要希望传递数据的引用,就必须添加ref关键字,下面举例说说这个关键字的用法:
class Program { static void Main(string[] args) { int a = 1, b = 2; // int a, b; exchange(ref a, ref b); Console.WriteLine("{0},{1}", a, b); } static void exchange(ref int a, ref int b) { int temp = a; a = b; b = temp; } }
输出结果:2,1
说明:进行该引用的方式传递时,a和b的值必须初始化,你可以试试不要初始化a、b的值,编译器会报错。2、out关键字
out关键字主要用来输出参数,方法中的return语句只能返回一个运算结果,虽然也可以使用引用型的参数返回计算结果,如上所示,但是ref修饰的参数在传参前要求先初始化实参。但是有时参数在传参前无法确定其值,其值只在方法调用后才返回,在传参前确定其值是没有意义的,则C#提供了out关键字。下面举例:
class Program { static void Main(string[] args) { int a = 10, b = 5; int sum, product; calc(a, b, out sum, out product); Console.WriteLine("和为:{0}, 积为:{1}", sum, product); } static void calc(int a, int b, out int sum, out int product) { sum = a + b; product = a * b; } }输出结果是:和为:15, 积为:50
说明:可以看出,通过这种方式就可以完成多个值的返回了。
总结:本次的案例比较简单,两个关键字理解起来也不难,ref在传参前必须初始化,而out在方法调用里面必须赋值,不然编译器都会报错。对于上面有什么错误的,欢迎各位大牛指出,联系方式:229047554@qq.com
- C#中的两个关键字ref和out
- 关于C#中的ref和out关键字
- C#中的ref和out关键字
- C# 中的关键字 out ref
- C# ref和out关键字
- C# ref和out关键字
- c#关键字,ref和out
- C# ref和out关键字
- C# ref和out 关键字
- c#关键字,ref和out
- 关于C#中的ref 和 out 关键字的区别
- C#中的 ref 和 out
- C#中的ref 和out
- C#中的out和ref
- C# 中的ref 和 out
- C#中的ref和out
- c#中的ref和out
- C# 中的ref & out关键字 的区别
- C的代码是如何变成程序的
- ABAP开发类命名规则
- 传话游戏
- 5年记(2)
- 人生在世需懂得人情世故
- C#中的两个关键字ref和out
- 使用GDI位图
- 开题第一帖
- org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter与org.apache.struts.dispatcher.F
- 作为一个男人,尤其作为一个真正的爷们,应该做好下列小事
- FIR & IIR
- 设置虚拟IP
- 卷积
- hdu2049