C#函数中如何返回多个返回值?
C#函数中如何返回多个返回值,并且多个返回值的类型不一样,返回结构体什么的,具体要怎么写?
给个例子哦。
------解决方案--------------------struct sRes
{
string m_strName;
int m_nOld;
bool m_bSex;
}
clase temple
{
sRes Function1()
{
sRes a = new sRes();
return a;
}
void Function2(ref sRes b)
{
sRes.m_strName = "";
sRes.m_nOld = 10;
sRes.m_bSex = true;
}
}
------解决方案--------------------以下内容转载,也就是抄的
没验证
有两种方法: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型参数的时候必须事先声明,否则无法使用,可以看作输出参数的初始化
------解决方案--------------------int a=0,b=0,c=0;
fun(ref int a, ref string b, ref object c)'
刚刚写错不好意思
------解决方案--------------------用ref关键字的参数