ref 和 out
作者:互联网
1.使用ref关键字 可以 将 值类型 变量按照引用方式传递
static void Main(string[] args) { int a = 20; int b = Square(ref a); //传递参数时带上ref Console.WriteLine($"a的值:{a},b的值:{b}"); Console.ReadLine(); } static int Square(ref int num1) //定义参数时带上ref { num1 = num1 + 1; return num1; }
2.使用out 关键字 可以让方法有多个返回值
int a = 10; int square; //这里需要定义一个变量 int result = Operation(a,out square); //传递参数时需要 带上out Console.WriteLine($"正方形的面积是:{square},正方体的体积是:{result}"); static int Operation(int num1,out int square) //定义参数时,需要带上out { square = num1 * num1;//求面积 必须要给返回值 赋值 int result = num1 * num1 * num1;//求体积 return result; }
out关键字的主要用途:
out关键字其实也是使用引用方式传递!实践开发中不建议经常使用out关键字
如果需要返回多个参数,可以尝试使用字典集合
示例:
#region 字典集合 int x = 20; int squ = 0; int res = 0; var dic = Operation2(x); foreach (var item in dic) { if (item.Key=="面积") { squ = item.Value; } if (item.Key=="体积") { res = item.Value; } } Console.WriteLine($"正方形的面积是:{squ},正方体的体积是:{res}"); #endregion Console.ReadLine(); static Dictionary<string,int> Operation2(int num1) { Dictionary<string, int> dic = new Dictionary<string, int>(); //面积 int square = num1 * num1; //体积 int result = num1 * num1 * num1; dic.Add("面积",square); dic.Add("体积",result); return dic; }
标签:square,num1,int,result,ref,out 来源: https://www.cnblogs.com/messi-10/p/16478047.html