利用out关键字让一个方法返回多个值

首先声名一个函数,定义如下
  public bool CheckUser(string UserName, out string PassWord, out int State)
  {
   if ( UserName == "123" )
   {
   PassWord = "456";
   State = 0;
   }
   else
   {
   PassWord = "";
   State = 1;
   }
   return false;
  }
  应用方法如下:
  string PassWord = "";
  int State = 0;
  string UserName = "abc";
  bool falg = CheckUser(UserName,out PassWord, out State);
  这个就可以得到函数CheckUser返回的三个值falg 、PassWord、State
  在使用out型参数的时候必须事先声明,否则无法使用,可以看作输出参数的初始化。
有两种方法:1.使用指针变量声明函数(或者使用数组变量)2.使用传出参数第一种方法:函数返回的是一个指针地址(数组地址),这个内存地址有多个变量寄存在里面。这个方法我不太会用,传地址传值我常常搞的淅沥糊涂。第二种方法:我用例子说明。首先声名一个函数,定义如下 public bool CheckUser(string UserName, out string PassWord, Out int State) { if ( UserName == "123" ) { PassWord = "456"; State = 0; } else { PassWord = ""; State = 1; } return false; } 应用方法如下: string PassWord = ""; int State = 0; string UserName = "abc"; bool falg = CheckUser(UserName,out PassWord, out State); 这个就可以得到函数CheckUser返回的三个值falg 、PassWord、State 在使用out型参数的时候必须事先声明,否则无法使用,可以看作输出参数的初始化。
原文地址:https://www.cnblogs.com/guanjie20/p/1625202.html