C# ref和out学习总结

来源:互联网 发布:四大咨询 知乎 编辑:程序博客网 时间:2024/04/28 08:23

如有雷同,不胜荣幸,若转载,请注明

C#中ref和out传递参数总结,两个都可用来传递参数,ref使用时必须先进行初始化,out则不需要,只要在返回之前赋值即可,文字废话到此,下面直接上例子

ref例子

Class A

{

private string name = string.Empty;

private int count = 0;

...

GetName(ref name,ref count);

Console.Write(“姓名:” + name + ",数量:" + count);

}

Class B

{

...

      //参数name是1个指向堆栈中值类型为string的指针 
      //参数count是1个指向堆栈中值类型为int的指针

public  bool GetName(ref stringname,ref int count)

{

...

name = "ching";

count = 10;

return true;

}

}

输出结果:姓名:ching,数量:10

out例子

Class A

{

private string name;

private int count;

...

GetName(ref name,ref count);

Console.Write(“姓名:” + name + ",数量:" + count);

}

Class B

{

...

public  bool GetName(ref stringname,ref int count)

{

...

name = "ching";

count = 10;

return true;

}

}

同样这个输出结果:姓名:ching,数量:10

综上所述,ref和out在C#中有着相同的功效,只是注意ref需要先初始化值,out则不需要,但是要在返回之前赋一个值,以上所说是简单阐述,详细介绍或者在使用上有疑惑之处请查看官方原版msdn手册即可,欢迎大家斧正

0 0
原创粉丝点击